@joekytc/dsh-swarm 0.1.1 → 0.2.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 +3 -3
- package/README.zh-CN.md +3 -3
- package/client/BoardCard.tsx +24 -2
- package/client/ConfigSection.tsx +71 -0
- package/client/ConfigSelect.tsx +69 -0
- package/client/KanbanBoard.tsx +3 -0
- package/client/KanbanTab.tsx +4 -3
- package/client/TaskDrawer.tsx +31 -31
- package/client/WorkflowRail.tsx +3 -1
- package/client/config-store.ts +51 -0
- package/client/config.css +110 -0
- package/client/index.ts +39 -4
- package/client/kanban.css +134 -2
- package/client/session-bridge.ts +39 -0
- package/client/timeline-model.ts +210 -0
- package/client/workflow-model.ts +3 -1
- package/lib/client.js +549 -64
- package/lib/config.d.ts +19 -4
- package/lib/config.js +18 -3
- package/lib/dispatcher/agent-runner.d.ts +28 -6
- package/lib/dispatcher/agent-runner.js +175 -62
- package/lib/dispatcher/chain-auditor.js +4 -1
- package/lib/dispatcher/dispatcher.d.ts +62 -3
- package/lib/dispatcher/dispatcher.js +243 -20
- package/lib/dispatcher/session-events.d.ts +11 -15
- package/lib/dispatcher/session-events.js +17 -5
- package/lib/dispatcher/v-orchestrator.d.ts +42 -9
- package/lib/dispatcher/v-orchestrator.js +236 -28
- package/lib/domain/config-override.d.ts +38 -0
- package/lib/domain/config-override.js +101 -0
- package/lib/domain/delivery-contract.d.ts +3 -2
- package/lib/domain/delivery-contract.js +28 -16
- package/lib/domain/gate-policy.d.ts +26 -0
- package/lib/domain/gate-policy.js +44 -0
- package/lib/domain/kanban-service.d.ts +16 -3
- package/lib/domain/kanban-service.js +41 -6
- package/lib/domain/memory.d.ts +29 -0
- package/lib/domain/memory.js +145 -0
- package/lib/domain/permissions.js +1 -1
- package/lib/domain/planning-checklist.d.ts +5 -0
- package/lib/domain/planning-checklist.js +80 -6
- package/lib/domain/projection.js +2 -1
- package/lib/domain/review-evidence.js +1 -1
- package/lib/domain/state-machine.js +2 -1
- package/lib/domain/types.d.ts +2 -2
- package/lib/index.js +19 -21
- package/lib/roles/clean-fs-tools.d.ts +22 -0
- package/lib/roles/clean-fs-tools.js +118 -0
- package/lib/roles/skill-installer.d.ts +6 -0
- package/lib/roles/skill-installer.js +32 -0
- package/lib/roles/toolsets.d.ts +13 -1
- package/lib/roles/toolsets.js +163 -31
- package/lib/roles/wiki-worker.d.ts +1 -0
- package/lib/roles/wiki-worker.js +10 -2
- package/lib/routes/kanban-http.d.ts +5 -2
- package/lib/routes/kanban-http.js +36 -3
- package/lib/routes/planning-driver.d.ts +7 -6
- package/lib/routes/planning-driver.js +19 -11
- package/lib/routes/prefix-router.d.ts +28 -13
- package/lib/routes/prefix-router.js +66 -1
- package/lib/services/config-provider.d.ts +42 -0
- package/lib/services/config-provider.js +94 -0
- package/lib/services/gate-runner.d.ts +24 -0
- package/lib/services/gate-runner.js +87 -0
- package/lib/services/kanban-provider.d.ts +5 -1
- package/lib/services/kanban-provider.js +40 -2
- package/lib/services/llm-catalog.d.ts +35 -0
- package/lib/services/llm-catalog.js +19 -0
- package/lib/tools/kanban-tools.js +1 -0
- package/lib/tools/main-session-tools.d.ts +17 -2
- package/lib/tools/main-session-tools.js +112 -25
- package/lib/tools/planning-tools.d.ts +9 -0
- package/lib/tools/planning-tools.js +120 -4
- package/lib/tools/prefetch-tools.js +1 -0
- package/lib/tools/spec-card-tools.js +1 -0
- package/lib/tools/wiki-tools.js +5 -4
- package/lib/wiki/kb-linkage.d.ts +9 -2
- package/lib/wiki/kb-linkage.js +3 -3
- package/lib/wiki/local-kb-client.d.ts +14 -0
- package/lib/wiki/local-kb-client.js +101 -0
- package/lib/wiki/local-kb.d.ts +6 -0
- package/lib/wiki/local-kb.js +25 -0
- package/lib/wiki/memory-recall.d.ts +24 -0
- package/lib/wiki/memory-recall.js +62 -0
- package/lib/wiki/page-path.d.ts +10 -1
- package/lib/wiki/page-path.js +31 -8
- package/lib/wiki/wiki-vault-client.d.ts +4 -3
- package/lib/wiki/wiki-vault-client.js +6 -6
- package/package.json +16 -11
- package/personas/kanban-d/preset.yml +1 -1
- package/personas/kanban-dt/agent.cordis.yml +3 -3
- package/personas/kanban-dt/preset.yml +1 -1
- package/personas/kanban-p/agent.cordis.yml +16 -0
- package/personas/kanban-p/preset.yml +1 -1
- package/personas/kanban-pt/agent.cordis.yml +38 -8
- package/personas/kanban-pt/preset.yml +1 -1
- package/personas/kanban-w/agent.cordis.yml +35 -16
- package/personas/kanban-w/preset.yml +1 -1
- package/personas/persona-dt.md +1 -1
- package/personas/persona-p.md +4 -1
- package/personas/persona-pt.md +13 -6
- package/personas/persona-w.md +11 -9
- package/skills/grill-me/SKILL.md +71 -0
- package/skills/llm-wiki-skill/.mise.toml +2 -0
- package/skills/llm-wiki-skill/.nvmrc +1 -0
- package/skills/llm-wiki-skill/AGENTS.md +173 -0
- package/skills/llm-wiki-skill/CHANGELOG.md +548 -0
- package/skills/llm-wiki-skill/CLAUDE.md +152 -0
- package/skills/llm-wiki-skill/HERMES.md +44 -0
- package/skills/llm-wiki-skill/README.en.md +261 -0
- package/skills/llm-wiki-skill/README.md +291 -0
- package/skills/llm-wiki-skill/SKILL.md +1133 -0
- package/skills/llm-wiki-skill/assets/graph-demo.gif +0 -0
- package/skills/llm-wiki-skill/assets/graph-preview.png +0 -0
- package/skills/llm-wiki-skill/deps/LICENSE-d3.txt +13 -0
- package/skills/llm-wiki-skill/deps/LICENSE-marked.txt +44 -0
- package/skills/llm-wiki-skill/deps/LICENSE-purify.txt +568 -0
- package/skills/llm-wiki-skill/deps/LICENSE-roughjs.txt +21 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/SKILL.md +261 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/references/config/first-time-setup.md +106 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/cdp.ts +179 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/constants.ts +13 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/defuddle-converter.ts +58 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/html-to-markdown.ts +135 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/legacy-converter.ts +629 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/main.ts +314 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/markdown-conversion-shared.ts +305 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/media-localizer.ts +317 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/package.json +14 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/paths.ts +29 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/vendor/baoyu-chrome-cdp/package.json +9 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/vendor/baoyu-chrome-cdp/src/index.test.ts +307 -0
- package/skills/llm-wiki-skill/deps/baoyu-url-to-markdown/scripts/vendor/baoyu-chrome-cdp/src/index.ts +523 -0
- package/skills/llm-wiki-skill/deps/d3.min.js +2 -0
- package/skills/llm-wiki-skill/deps/marked.min.js +6 -0
- package/skills/llm-wiki-skill/deps/purify.min.js +3 -0
- package/skills/llm-wiki-skill/deps/rough.min.js +7 -0
- package/skills/llm-wiki-skill/deps/youtube-transcript/SKILL.md +47 -0
- package/skills/llm-wiki-skill/deps/youtube-transcript/scripts/get_transcript.py +72 -0
- package/skills/llm-wiki-skill/designs/graph-edge-legibility/graph-edge-treatments.html +480 -0
- package/skills/llm-wiki-skill/docs/design/oriental-atlas/DESIGN.md +183 -0
- package/skills/llm-wiki-skill/docs/design/oriental-atlas/README.md +10 -0
- package/skills/llm-wiki-skill/docs/design/oriental-atlas/design-brief.md +170 -0
- package/skills/llm-wiki-skill/docs/design/oriental-atlas/oriental-editorial-atlas.html +1908 -0
- package/skills/llm-wiki-skill/docs/design/oriental-atlas/reviews/result-review.md +68 -0
- package/skills/llm-wiki-skill/docs/graph/2026-06-16-interaction-risk-audit.md +88 -0
- package/skills/llm-wiki-skill/docs/graph/2026-06-16-interaction-test-coverage-map.md +212 -0
- package/skills/llm-wiki-skill/docs/graph/performance/2026-06-18-phase-0-2-baseline.md +86 -0
- package/skills/llm-wiki-skill/docs/graph/performance/2026-06-18-phase-1-3-dom-svg-large-baseline.md +85 -0
- package/skills/llm-wiki-skill/docs/graph/performance/2026-06-18-phase-1-4-disposable-validation-gate.md +97 -0
- package/skills/llm-wiki-skill/docs/graph/performance/2026-06-18-phase-2-4-global-renderer-trial-matrix.md +168 -0
- package/skills/llm-wiki-skill/docs/graph/performance/2026-06-19-phase-6-1-sigma-graphology-trial.md +71 -0
- package/skills/llm-wiki-skill/docs/graph/performance/2026-06-19-phase-6-2-vis-network-trial.md +78 -0
- package/skills/llm-wiki-skill/docs/graph/performance/2026-06-19-phase-6-3-aggregation-fallback-trial.md +72 -0
- package/skills/llm-wiki-skill/docs/graph/performance/2026-06-19-phase-6-4-global-renderer-route-decision.md +94 -0
- package/skills/llm-wiki-skill/docs/graph/performance/2026-06-19-sigma-global-production-integration-result.md +102 -0
- package/skills/llm-wiki-skill/docs/graph/performance/artifacts/2026-06-18-phase-0-2/stage-4.5-offline-dense-wheel.json +9 -0
- package/skills/llm-wiki-skill/docs/graph/performance/artifacts/2026-06-18-phase-0-2/stage-4.5-offline-dense-wheel.png +0 -0
- package/skills/llm-wiki-skill/docs/graph/performance/artifacts/2026-06-18-phase-0-2/stage-4.5-offline-navigation.png +0 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-15-omp-tool-status-events-design.md +174 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-16-graph-interaction-geometry-design.md +832 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-16-graph-six-layer-architecture-design.md +577 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-17-static-renderer-coordination-split-design.md +172 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-18-large-graph-global-community-design.md +909 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-19-sigma-global-graph-renderer-design.md +360 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-20-paper-ui-port-design.md +162 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-20-paper-ui-v2-shell-alignment-design.md +384 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-21-graph-experience-completion-design.md +534 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-22-chat-auto-scroll-design.md +185 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-22-graph-community-node-visual-design.md +266 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-25-sigma-overlay-refactor-perf-design.md +170 -0
- package/skills/llm-wiki-skill/docs/spark/2026-06-26-global-sigma-community-spotlight-design.md +393 -0
- package/skills/llm-wiki-skill/docs/spark/mockups/2026-06-18-large-graph-global-community-flow.html +746 -0
- package/skills/llm-wiki-skill/install.ps1 +87 -0
- package/skills/llm-wiki-skill/install.sh +722 -0
- package/skills/llm-wiki-skill/package-lock.json +11171 -0
- package/skills/llm-wiki-skill/package.json +24 -0
- package/skills/llm-wiki-skill/packages/graph-engine/package.json +37 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/anim/.gitkeep +1 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/anim/index.ts +179 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/architecture.ts +79 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/diff.ts +121 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/facade.ts +1406 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/graph-node.ts +37 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/index.ts +25 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/layout/edge-geometry.ts +17 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/layout/index.ts +16 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/layout/spatial-index.ts +509 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/model/atlas.ts +18 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/model/index.ts +10 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/model/labels.ts +11 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/model/layout.ts +81 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/model/learning.ts +8 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/model/legacy-helpers.ts +1379 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/model/queue.ts +7 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/model/storage.ts +4 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/model/visibility.ts +9 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/.gitkeep +1 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/adapter.ts +443 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/aggregation-containers.ts +64 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/community-cloud-geometry.ts +178 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/community-wash.ts +238 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/community-washes.ts +19 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/compat-contract.ts +14 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/controller.ts +705 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/controls.ts +288 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/dom-svg-renderer.ts +180 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/edges.ts +51 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/geometry.ts +380 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/gestures.ts +673 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/graph-renderer-root.ts +387 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/hit-testing.ts +56 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/host-dom.ts +14 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/hover-card.ts +37 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/index.ts +213 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/keyboard.ts +48 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/legend.ts +25 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/minimap.ts +45 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/model.ts +1339 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/node-drag-lifecycle.ts +94 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/nodes.ts +103 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/offline-reader.ts +209 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/overlays-presenter.ts +192 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/overlays.ts +73 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/pin-position.ts +51 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/preview.ts +65 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/relation-focus.ts +91 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/render-context.ts +85 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/render-pipeline.ts +871 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/render-styles.ts +1405 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/renderer-surface.ts +75 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/search.ts +57 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/sigma-coordinates.ts +44 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/sigma-global-drag.ts +246 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/sigma-global-renderer.ts +1425 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/sigma-overlay-svg.ts +121 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/simulation-bridge.ts +59 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/state.ts +262 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/toolbar.ts +40 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/render/viewport.ts +336 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/select/.gitkeep +1 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/select/index.ts +189 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/sim/index.ts +372 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/sim/pins.ts +84 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/summary/index.ts +447 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/themes/.gitkeep +1 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/themes/index.ts +8 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/themes/tokens.ts +117 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/types/d3-quadtree.d.ts +22 -0
- package/skills/llm-wiki-skill/packages/graph-engine/src/types.ts +531 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/aggregation-fallback-trial-adapter.test.ts +115 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/aggregation-fallback-trial-adapter.ts +222 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/anim.test.ts +121 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/architecture.test.ts +63 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/community-cloud-geometry.test.ts +86 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/community-wash.test.ts +97 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/diff.test.ts +133 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/facade.test.ts +1369 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/geometry.test.ts +147 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/gestures.test.ts +768 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/graph-layout.test.ts +110 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/helpers.test.ts +287 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/interaction-contract.test.ts +106 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/keyboard.test.ts +59 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/large-fixtures.test.ts +47 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/large-graph-fixtures.ts +420 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/learning.test.ts +259 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/node-drag-lifecycle.test.ts +166 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/overlays.test.ts +115 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/preview.test.ts +56 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/queue.test.ts +114 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/relation-focus.test.ts +115 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/render-model.test.ts +1030 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/renderer-adapter-contract.test.ts +271 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/renderer-boundary.test.ts +618 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/renderer-lifecycle.test.ts +1711 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/route-continuity.test.ts +284 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/runtime-state.test.ts +281 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/search-and-legend.test.ts +124 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/select.test.ts +168 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/sigma-coordinates.test.ts +50 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/sigma-global-renderer.test.ts +2210 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/sigma-trial-adapter.test.ts +82 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/sigma-trial-adapter.ts +271 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/sim.test.ts +207 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/simulation-bridge.test.ts +96 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/spatial-index.test.ts +222 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/state.test.ts +189 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/summary-contract.test.ts +422 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/themes.test.ts +62 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/toolbar.test.ts +64 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/viewport.test.ts +213 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/vis-network-trial-adapter.test.ts +82 -0
- package/skills/llm-wiki-skill/packages/graph-engine/test/vis-network-trial-adapter.ts +186 -0
- package/skills/llm-wiki-skill/packages/graph-engine/tsconfig.json +17 -0
- package/skills/llm-wiki-skill/packages/graph-engine/vite.config.ts +15 -0
- package/skills/llm-wiki-skill/platforms/claude/CLAUDE.md +37 -0
- package/skills/llm-wiki-skill/platforms/claude/companions/llm-wiki-upgrade/SKILL.md +95 -0
- package/skills/llm-wiki-skill/platforms/codex/AGENTS.md +23 -0
- package/skills/llm-wiki-skill/platforms/hermes/README.md +31 -0
- package/skills/llm-wiki-skill/platforms/openclaw/README.md +31 -0
- package/skills/llm-wiki-skill/scripts/adapter-state.sh +424 -0
- package/skills/llm-wiki-skill/scripts/build-graph-data.sh +395 -0
- package/skills/llm-wiki-skill/scripts/build-graph-html.sh +459 -0
- package/skills/llm-wiki-skill/scripts/cache.sh +352 -0
- package/skills/llm-wiki-skill/scripts/create-source-page.sh +100 -0
- package/skills/llm-wiki-skill/scripts/delete-helper.sh +68 -0
- package/skills/llm-wiki-skill/scripts/graph-analysis.js +732 -0
- package/skills/llm-wiki-skill/scripts/hook-session-start.sh +46 -0
- package/skills/llm-wiki-skill/scripts/init-wiki.sh +95 -0
- package/skills/llm-wiki-skill/scripts/lib/source-signal-eligibility.js +158 -0
- package/skills/llm-wiki-skill/scripts/lint-fix.sh +114 -0
- package/skills/llm-wiki-skill/scripts/lint-runner.sh +217 -0
- package/skills/llm-wiki-skill/scripts/runtime-context.sh +77 -0
- package/skills/llm-wiki-skill/scripts/shared-config.sh +83 -0
- package/skills/llm-wiki-skill/scripts/source-record-contract.tsv +10 -0
- package/skills/llm-wiki-skill/scripts/source-registry.sh +349 -0
- package/skills/llm-wiki-skill/scripts/source-registry.tsv +10 -0
- package/skills/llm-wiki-skill/scripts/source-signal-coverage.js +83 -0
- package/skills/llm-wiki-skill/scripts/validate-step1.sh +144 -0
- package/skills/llm-wiki-skill/scripts/wiki-compat.sh +267 -0
- package/skills/llm-wiki-skill/setup.sh +8 -0
- package/skills/llm-wiki-skill/templates/entity-template.md +30 -0
- package/skills/llm-wiki-skill/templates/graph-styles/wash/footer.html +27 -0
- package/skills/llm-wiki-skill/templates/graph-styles/wash/graph-wash-helpers.js +1326 -0
- package/skills/llm-wiki-skill/templates/graph-styles/wash/graph-wash.js +1009 -0
- package/skills/llm-wiki-skill/templates/graph-styles/wash/header.html +2002 -0
- package/skills/llm-wiki-skill/templates/index-en-template.md +51 -0
- package/skills/llm-wiki-skill/templates/index-template.md +51 -0
- package/skills/llm-wiki-skill/templates/log-en-template.md +11 -0
- package/skills/llm-wiki-skill/templates/log-template.md +11 -0
- package/skills/llm-wiki-skill/templates/overview-en-template.md +41 -0
- package/skills/llm-wiki-skill/templates/overview-template.md +41 -0
- package/skills/llm-wiki-skill/templates/purpose-en-template.md +16 -0
- package/skills/llm-wiki-skill/templates/purpose-template.md +16 -0
- package/skills/llm-wiki-skill/templates/query-template.md +19 -0
- package/skills/llm-wiki-skill/templates/schema-template.md +185 -0
- package/skills/llm-wiki-skill/templates/source-template.md +51 -0
- package/skills/llm-wiki-skill/templates/synthesis-template.md +25 -0
- package/skills/llm-wiki-skill/templates/topic-template.md +35 -0
- package/skills/llm-wiki-skill/tests/adapter-state.sh +338 -0
- package/skills/llm-wiki-skill/tests/browser/graph-aggregation-fallback-trial.ts +737 -0
- package/skills/llm-wiki-skill/tests/browser/graph-community-node-map.mjs +255 -0
- package/skills/llm-wiki-skill/tests/browser/graph-community-wash-interactions.mjs +170 -0
- package/skills/llm-wiki-skill/tests/browser/graph-default-behavior.mjs +630 -0
- package/skills/llm-wiki-skill/tests/browser/graph-density-preview.mjs +53 -0
- package/skills/llm-wiki-skill/tests/browser/graph-html-insights.mjs +41 -0
- package/skills/llm-wiki-skill/tests/browser/graph-large-performance.ts +689 -0
- package/skills/llm-wiki-skill/tests/browser/graph-node-slim.mjs +75 -0
- package/skills/llm-wiki-skill/tests/browser/graph-offline-phase-6.mjs +660 -0
- package/skills/llm-wiki-skill/tests/browser/graph-renderer-trial-shared.ts +291 -0
- package/skills/llm-wiki-skill/tests/browser/graph-sigma-global-production.ts +1437 -0
- package/skills/llm-wiki-skill/tests/browser/graph-sigma-graphology-trial.ts +949 -0
- package/skills/llm-wiki-skill/tests/browser/graph-stage-4-5.mjs +815 -0
- package/skills/llm-wiki-skill/tests/browser/graph-vis-network-trial.ts +762 -0
- package/skills/llm-wiki-skill/tests/browser/graph-workbench-interactions.mjs +730 -0
- package/skills/llm-wiki-skill/tests/browser/validate-graph-trial-result.mjs +149 -0
- package/skills/llm-wiki-skill/tests/expected/graph-data-empty.json +60 -0
- package/skills/llm-wiki-skill/tests/expected/graph-data-sample.json +396 -0
- package/skills/llm-wiki-skill/tests/expected/graph-interactive-basic.html +1736 -0
- package/skills/llm-wiki-skill/tests/expected/lint-output.txt +44 -0
- package/skills/llm-wiki-skill/tests/fixtures/coverage-sample-wiki/index.md +1 -0
- package/skills/llm-wiki-skill/tests/fixtures/coverage-sample-wiki/wiki/entities/Alpha.md +10 -0
- package/skills/llm-wiki-skill/tests/fixtures/coverage-sample-wiki/wiki/entities/Beta.md +7 -0
- package/skills/llm-wiki-skill/tests/fixtures/coverage-sample-wiki/wiki/entities/Delta.md +8 -0
- package/skills/llm-wiki-skill/tests/fixtures/coverage-sample-wiki/wiki/entities/Gamma.md +8 -0
- package/skills/llm-wiki-skill/tests/fixtures/coverage-sample-wiki/wiki/queries/20260422-abc.md +10 -0
- package/skills/llm-wiki-skill/tests/fixtures/coverage-sample-wiki/wiki/synthesis/Crystal.md +8 -0
- package/skills/llm-wiki-skill/tests/fixtures/coverage-sample-wiki/wiki/topics/Overview.md +9 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-data-empty-wiki/wiki/entities/.gitkeep +0 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-data-sample-wiki/purpose.md +3 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-data-sample-wiki/wiki/entities/Attention.md +7 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-data-sample-wiki/wiki/entities/Decoder.md +7 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-data-sample-wiki/wiki/entities/Encoder.md +7 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-data-sample-wiki/wiki/entities/GPT.md +7 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-data-sample-wiki/wiki/entities/Transformer.md +13 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-data-sample-wiki/wiki/sources/paper.md +9 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-data-sample-wiki/wiki/topics/arch.md +12 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-data-sample-wiki/wiki/topics/finetune.md +9 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-interactive-basic/wiki/graph-data.json +40 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-interactive-dense/wiki/graph-data.json +3965 -0
- package/skills/llm-wiki-skill/tests/fixtures/graph-interactive-multicomm/wiki/graph-data.json +212 -0
- package/skills/llm-wiki-skill/tests/fixtures/lint-sample-wiki/index.md +14 -0
- package/skills/llm-wiki-skill/tests/fixtures/lint-sample-wiki/wiki/entities/C++.md +6 -0
- package/skills/llm-wiki-skill/tests/fixtures/lint-sample-wiki/wiki/entities/Lonely.md +4 -0
- package/skills/llm-wiki-skill/tests/fixtures/lint-sample-wiki/wiki/entities/Other.md +8 -0
- package/skills/llm-wiki-skill/tests/fixtures/lint-sample-wiki/wiki/entities/Real.md +7 -0
- package/skills/llm-wiki-skill/tests/fixtures/lint-sample-wiki/wiki/sources/2026-01-01-test-source.md +15 -0
- package/skills/llm-wiki-skill/tests/fixtures/lint-sample-wiki/wiki/sources/2026-02-01-inline-img.md +12 -0
- package/skills/llm-wiki-skill/tests/fixtures/lint-sample-wiki/wiki/topics/AIbasic.md +3 -0
- package/skills/llm-wiki-skill/tests/graph-aggregation-fallback-trial.regression-1.sh +46 -0
- package/skills/llm-wiki-skill/tests/graph-analysis-helper.regression-1.sh +237 -0
- package/skills/llm-wiki-skill/tests/graph-browser-large-performance.regression-1.sh +39 -0
- package/skills/llm-wiki-skill/tests/graph-browser-stage-4-5.regression-1.sh +163 -0
- package/skills/llm-wiki-skill/tests/graph-build-failures.regression-1.sh +91 -0
- package/skills/llm-wiki-skill/tests/graph-community-node-map.regression-1.sh +107 -0
- package/skills/llm-wiki-skill/tests/graph-community-wash-interactions.regression-1.sh +35 -0
- package/skills/llm-wiki-skill/tests/graph-data-confidence-merge.regression-1.sh +309 -0
- package/skills/llm-wiki-skill/tests/graph-data-source-paths.regression-1.sh +49 -0
- package/skills/llm-wiki-skill/tests/graph-default-behavior.regression-1.sh +35 -0
- package/skills/llm-wiki-skill/tests/graph-html-a11y.regression-1.sh +50 -0
- package/skills/llm-wiki-skill/tests/graph-html-brand-link.regression-1.sh +47 -0
- package/skills/llm-wiki-skill/tests/graph-html-density.regression-1.sh +228 -0
- package/skills/llm-wiki-skill/tests/graph-html-drawer-neighbors.regression-1.sh +47 -0
- package/skills/llm-wiki-skill/tests/graph-html-insights.regression-1.sh +80 -0
- package/skills/llm-wiki-skill/tests/graph-html-long-label.regression-1.sh +92 -0
- package/skills/llm-wiki-skill/tests/graph-html-minimap.regression-1.sh +51 -0
- package/skills/llm-wiki-skill/tests/graph-html-mobile.regression-1.sh +48 -0
- package/skills/llm-wiki-skill/tests/graph-html-oriental-atlas-contract.regression-1.sh +94 -0
- package/skills/llm-wiki-skill/tests/graph-html-oriental-design-contract.regression-1.sh +82 -0
- package/skills/llm-wiki-skill/tests/graph-html-search.regression-1.sh +52 -0
- package/skills/llm-wiki-skill/tests/graph-html-styles.regression-1.sh +66 -0
- package/skills/llm-wiki-skill/tests/graph-html-toolbar.regression-1.sh +62 -0
- package/skills/llm-wiki-skill/tests/graph-offline-phase-6.regression-1.sh +51 -0
- package/skills/llm-wiki-skill/tests/graph-sigma-global-production.regression-1.sh +64 -0
- package/skills/llm-wiki-skill/tests/graph-sigma-graphology-trial.regression-1.sh +46 -0
- package/skills/llm-wiki-skill/tests/graph-vis-network-trial.regression-1.sh +46 -0
- package/skills/llm-wiki-skill/tests/graph-workbench-interactions.regression-1.sh +151 -0
- package/skills/llm-wiki-skill/tests/js/graph-wash-bootstrap.test.js +110 -0
- package/skills/llm-wiki-skill/tests/js/graph-wash-helpers.test.js +296 -0
- package/skills/llm-wiki-skill/tests/js/graph-wash-learning.test.js +260 -0
- package/skills/llm-wiki-skill/tests/js/graph-wash-queue.test.js +115 -0
- package/skills/llm-wiki-skill/tests/js/graph-wash-runtime-state.test.js +282 -0
- package/skills/llm-wiki-skill/tests/js/source-signal-coverage.test.js +48 -0
- package/skills/llm-wiki-skill/tests/js/source-signal-eligibility.test.js +202 -0
- package/skills/llm-wiki-skill/tests/lib/graph-html-engine-helpers.sh +110 -0
- package/skills/llm-wiki-skill/tests/lint-output.regression-1.sh +32 -0
- package/skills/llm-wiki-skill/tests/regression.sh +1754 -0
- package/skills/llm-wiki-skill/workbench/AGENTS.md +110 -0
- package/skills/llm-wiki-skill/workbench/CLAUDE.md +55 -0
- package/skills/llm-wiki-skill/workbench/LICENSE +21 -0
- package/skills/llm-wiki-skill/workbench/PRODUCT.md +1353 -0
- package/skills/llm-wiki-skill/workbench/README.md +30 -0
- package/skills/llm-wiki-skill/workbench/docs/current-kb-retrieval-design.md +587 -0
- package/skills/llm-wiki-skill/workbench/docs/graph-evolution-1-design.md +210 -0
- package/skills/llm-wiki-skill/workbench/docs/stage-2-design.md +1139 -0
- package/skills/llm-wiki-skill/workbench/docs/stage-3-design.md +1269 -0
- package/skills/llm-wiki-skill/workbench/docs/stage-3.5-design.md +1164 -0
- package/skills/llm-wiki-skill/workbench/docs/stage-4-design.md +504 -0
- package/skills/llm-wiki-skill/workbench/docs/stage-4.5-design.md +195 -0
- package/skills/llm-wiki-skill/workbench/docs/superpowers/specs/2026-05-28-resizable-preview-layout-design.md +165 -0
- package/skills/llm-wiki-skill/workbench/docs/superpowers/specs/2026-05-28-settings-panel-scroll-fix.md +50 -0
- package/skills/llm-wiki-skill/workbench/server/package.json +31 -0
- package/skills/llm-wiki-skill/workbench/server/src/agent.ts +457 -0
- package/skills/llm-wiki-skill/workbench/server/src/artifacts.ts +248 -0
- package/skills/llm-wiki-skill/workbench/server/src/auth.ts +164 -0
- package/skills/llm-wiki-skill/workbench/server/src/config.ts +130 -0
- package/skills/llm-wiki-skill/workbench/server/src/conversations.test.ts +159 -0
- package/skills/llm-wiki-skill/workbench/server/src/conversations.ts +270 -0
- package/skills/llm-wiki-skill/workbench/server/src/digest/batch.ts +189 -0
- package/skills/llm-wiki-skill/workbench/server/src/digest/concurrency.test.ts +36 -0
- package/skills/llm-wiki-skill/workbench/server/src/digest/concurrency.ts +31 -0
- package/skills/llm-wiki-skill/workbench/server/src/digest/subagent.ts +91 -0
- package/skills/llm-wiki-skill/workbench/server/src/extensions/artifacts.ts +81 -0
- package/skills/llm-wiki-skill/workbench/server/src/extensions/knowledge-base.ts +263 -0
- package/skills/llm-wiki-skill/workbench/server/src/extensions/new-wiki.ts +42 -0
- package/skills/llm-wiki-skill/workbench/server/src/extensions/synthesis.ts +172 -0
- package/skills/llm-wiki-skill/workbench/server/src/graph-watcher.test.ts +196 -0
- package/skills/llm-wiki-skill/workbench/server/src/graph.test.ts +113 -0
- package/skills/llm-wiki-skill/workbench/server/src/graph.ts +351 -0
- package/skills/llm-wiki-skill/workbench/server/src/index.ts +1148 -0
- package/skills/llm-wiki-skill/workbench/server/src/knowledge-bases.test.ts +30 -0
- package/skills/llm-wiki-skill/workbench/server/src/knowledge-bases.ts +321 -0
- package/skills/llm-wiki-skill/workbench/server/src/pages.test.ts +41 -0
- package/skills/llm-wiki-skill/workbench/server/src/pages.ts +160 -0
- package/skills/llm-wiki-skill/workbench/server/src/retrieval.test.ts +151 -0
- package/skills/llm-wiki-skill/workbench/server/src/retrieval.ts +427 -0
- package/skills/llm-wiki-skill/workbench/server/src/tool-status-events.test.ts +363 -0
- package/skills/llm-wiki-skill/workbench/server/src/tool-status-events.ts +616 -0
- package/skills/llm-wiki-skill/workbench/server/src/wiki-init.test.ts +19 -0
- package/skills/llm-wiki-skill/workbench/server/src/wiki-init.ts +188 -0
- package/skills/llm-wiki-skill/workbench/server/tsconfig.json +10 -0
- package/skills/llm-wiki-skill/workbench/tsconfig.json +20 -0
- package/skills/llm-wiki-skill/workbench/web/README.md +73 -0
- package/skills/llm-wiki-skill/workbench/web/components.json +21 -0
- package/skills/llm-wiki-skill/workbench/web/eslint.config.js +22 -0
- package/skills/llm-wiki-skill/workbench/web/index.html +16 -0
- package/skills/llm-wiki-skill/workbench/web/package.json +54 -0
- package/skills/llm-wiki-skill/workbench/web/src/App.tsx +1195 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/AddExternalDialog.tsx +375 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/AppearancePanel.tsx +158 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/ArtifactView.tsx +15 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/BatchDigestPanel.tsx +117 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/ChatPanel.tsx +890 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/CommandMenu.tsx +75 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/ExportButtons.tsx +58 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/GraphPanel.tsx +800 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/GraphReader.tsx +52 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/GraphSelection.tsx +100 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/GraphSummaryDrawer.tsx +269 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/MainViewTabs.tsx +69 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/MarkdownView.tsx +106 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/NewWikiDialog.tsx +103 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/RefMenu.tsx +44 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/RightDrawer.tsx +298 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/SearchPanel.tsx +165 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/SettingsPanel.tsx +320 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/Sidebar.tsx +354 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/ToolHistorySummary.tsx +111 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/ToolStatusRunway.tsx +70 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/TopBar.tsx +348 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/renderers/DownloadOnlyRenderer.tsx +88 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/renderers/HtmlRenderer.tsx +92 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/ui/button.tsx +52 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/ui/command.tsx +50 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/ui/dialog.tsx +156 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/ui/input.tsx +21 -0
- package/skills/llm-wiki-skill/workbench/web/src/components/ui/tooltip.tsx +57 -0
- package/skills/llm-wiki-skill/workbench/web/src/index.css +4204 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/api.ts +648 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/appearance.ts +114 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/drawer-layout.ts +41 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/drawer-state.ts +168 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/graph-reader.ts +25 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/graph-selection-drawer.ts +35 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/graph-selection.ts +96 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/graph-summary-actions.ts +184 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/legacy-tool-status.ts +113 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/model-roles.ts +20 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/search-filter.ts +104 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/sse.ts +72 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/tool-status-format.ts +170 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/tool-status-model.ts +392 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/utils.ts +10 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/view-status.ts +16 -0
- package/skills/llm-wiki-skill/workbench/web/src/lib/wiki-links.ts +32 -0
- package/skills/llm-wiki-skill/workbench/web/src/main.tsx +10 -0
- package/skills/llm-wiki-skill/workbench/web/test/api.test.ts +61 -0
- package/skills/llm-wiki-skill/workbench/web/test/app-shell-drawer-layout.test.tsx +48 -0
- package/skills/llm-wiki-skill/workbench/web/test/appearance-panel.test.tsx +121 -0
- package/skills/llm-wiki-skill/workbench/web/test/appearance.test.ts +262 -0
- package/skills/llm-wiki-skill/workbench/web/test/chat-host-source.test.tsx +22 -0
- package/skills/llm-wiki-skill/workbench/web/test/chat-panel-auto-scroll.test.tsx +311 -0
- package/skills/llm-wiki-skill/workbench/web/test/chat-panel-bubbles.test.tsx +48 -0
- package/skills/llm-wiki-skill/workbench/web/test/chat-panel-composer.test.tsx +86 -0
- package/skills/llm-wiki-skill/workbench/web/test/chat-panel-tool-status.test.tsx +26 -0
- package/skills/llm-wiki-skill/workbench/web/test/export-batch-paper.test.tsx +101 -0
- package/skills/llm-wiki-skill/workbench/web/test/graph-drawer-state.test.ts +257 -0
- package/skills/llm-wiki-skill/workbench/web/test/graph-panel-paper.test.tsx +200 -0
- package/skills/llm-wiki-skill/workbench/web/test/graph-reader-request.test.ts +32 -0
- package/skills/llm-wiki-skill/workbench/web/test/graph-reader.test.ts +62 -0
- package/skills/llm-wiki-skill/workbench/web/test/graph-selection-drawer.test.ts +56 -0
- package/skills/llm-wiki-skill/workbench/web/test/graph-selection.test.ts +83 -0
- package/skills/llm-wiki-skill/workbench/web/test/graph-summary-actions.test.ts +188 -0
- package/skills/llm-wiki-skill/workbench/web/test/main-view-tabs.test.tsx +34 -0
- package/skills/llm-wiki-skill/workbench/web/test/markdown-view.test.tsx +34 -0
- package/skills/llm-wiki-skill/workbench/web/test/popup-menus.test.tsx +85 -0
- package/skills/llm-wiki-skill/workbench/web/test/render.test.tsx +30 -0
- package/skills/llm-wiki-skill/workbench/web/test/render.tsx +38 -0
- package/skills/llm-wiki-skill/workbench/web/test/right-drawer-graph-summary.test.tsx +287 -0
- package/skills/llm-wiki-skill/workbench/web/test/right-drawer-interactions.test.tsx +182 -0
- package/skills/llm-wiki-skill/workbench/web/test/search-filter.test.ts +65 -0
- package/skills/llm-wiki-skill/workbench/web/test/search-panel.test.tsx +155 -0
- package/skills/llm-wiki-skill/workbench/web/test/setup-dom.ts +66 -0
- package/skills/llm-wiki-skill/workbench/web/test/sidebar-v2-source.test.ts +17 -0
- package/skills/llm-wiki-skill/workbench/web/test/sidebar.test.tsx +110 -0
- package/skills/llm-wiki-skill/workbench/web/test/tool-history-summary.test.tsx +150 -0
- package/skills/llm-wiki-skill/workbench/web/test/tool-status-format.test.ts +107 -0
- package/skills/llm-wiki-skill/workbench/web/test/tool-status-model.test.ts +324 -0
- package/skills/llm-wiki-skill/workbench/web/test/tool-status-runway.test.ts +159 -0
- package/skills/llm-wiki-skill/workbench/web/test/topbar.test.tsx +248 -0
- package/skills/llm-wiki-skill/workbench/web/test/visual/paper-ui.ts +898 -0
- package/skills/llm-wiki-skill/workbench/web/test/wiki-links.test.ts +23 -0
- package/skills/llm-wiki-skill/workbench/web/test-results/paper-ui/actual/.gitkeep +1 -0
- package/skills/llm-wiki-skill/workbench/web/test-results/paper-ui/baseline/.gitkeep +1 -0
- package/skills/llm-wiki-skill/workbench/web/tsconfig.app.json +30 -0
- package/skills/llm-wiki-skill/workbench/web/tsconfig.json +7 -0
- package/skills/llm-wiki-skill/workbench/web/tsconfig.node.json +24 -0
- package/skills/llm-wiki-skill/workbench/web/vite.config.ts +28 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# kanban-w — W(wiki-bridge) 裁剪 agent preset(D22,2026-08-15)。
|
|
2
2
|
#
|
|
3
3
|
# 官方 agent-presets 无 include/patch 语义,本文件为手写最小组合(取舍见 Task 33 提交)。
|
|
4
|
-
# 基座同 kanban-p:persona/instructions + bash + fs + fs-search。
|
|
4
|
+
# 基座同 kanban-p:persona/instructions + bash + fs + fs-search;双模式(D8)另挂 skill。
|
|
5
5
|
# 角色差异(wiki/prefetch/spec/kanban 工具)由 installRoleTools 按角色注入,不在此文件。
|
|
6
|
-
# 裁剪(设计 §4):无 run_code、jobs、
|
|
6
|
+
# 裁剪(设计 §4):无 run_code、jobs、goal、plan-mode、compaction、delegation、
|
|
7
7
|
# ask-user、todo、web。bash 保留给只读命令(cat/git show);无 readonly 模式的 API
|
|
8
8
|
# 局限与 P 相同:只读纪律 = workspace-write sandbox + 角色上下文提示词(软约束)。
|
|
9
9
|
|
|
@@ -11,21 +11,33 @@
|
|
|
11
11
|
name: '@deepseek-ai/dsh-persona'
|
|
12
12
|
config:
|
|
13
13
|
text: >-
|
|
14
|
-
You are the
|
|
15
|
-
working directory is {{cwd}}. You
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
14
|
+
You are the knowledge officer (Knowledge Officer) powered by the {{model}} model. Your
|
|
15
|
+
working directory is {{cwd}}. You curate the requirement knowledge base (KB) in one of two
|
|
16
|
+
modes (the active mode and the local KB root, when local, are stated in your task context);
|
|
17
|
+
you never push, commit, or execute code. Rules:
|
|
18
|
+
1. Remote KB mode: use wiki_search/wiki_read/wiki_write; wiki writes only under the
|
|
19
|
+
whitelisted projects/<repoSlug>/ namespaces (repoSlug is derived from the chain
|
|
20
|
+
workspaceDir; see the KB page-path rule in the task body); return kb_url/page_path via
|
|
21
|
+
wiki_write and complete with a non-empty summary.
|
|
22
|
+
2. Local KB mode: load the llm-wiki skill via the skill tool and run its
|
|
23
|
+
query/ingest/crystallize workflows against the local KB root given in your task context
|
|
24
|
+
(initialize it first with the llm-wiki init workflow if absent, idempotent). Deliver
|
|
25
|
+
page_path = a wiki/** relative path inside the KB root, and kb_url = "" (empty string).
|
|
26
|
+
3. KB retrieval ranks relevance first (7) then freshness (3).
|
|
27
|
+
4. Read-only repo prefetch (file/external/kb modes) lands verbatim in the task workspace —
|
|
28
|
+
no compression/distillation. In local KB mode prefetch_kb is unavailable: use the skill
|
|
29
|
+
tool with llm-wiki instead. Never ingest external URLs in local KB mode.
|
|
30
|
+
5. You are NOT an executor: no git/code/build/push, no dependency install, no repo writes
|
|
31
|
+
(bash limited to read-only commands like cat/git show for repo facts; your only writable
|
|
32
|
+
area in local KB mode is the local KB root — direct cp/mv/mkdir tools are rejected by the
|
|
33
|
+
guard, so do all in-KB file operations with the write tool; bash cp/mv inside the KB root
|
|
34
|
+
is permitted).
|
|
35
|
+
6. Never create tasks, never approve/edit spec cards, never touch other tasks (only
|
|
24
36
|
complete/block your own bound task).
|
|
25
|
-
|
|
26
|
-
human; never hand in an empty complete.
|
|
27
|
-
|
|
28
|
-
prefetch_kb + spec_card_view (read-only).
|
|
37
|
+
7. If the KB (either mode) is unavailable, kanban_block(reason=kb-unreachable) and wait
|
|
38
|
+
for a human; never hand in an empty complete.
|
|
39
|
+
8. Use kanban_* + (remote: wiki_search/wiki_read/wiki_write | local: skill) +
|
|
40
|
+
prefetch_file/prefetch_external/prefetch_kb + spec_card_view (read-only).
|
|
29
41
|
|
|
30
42
|
- id: agent-instructions
|
|
31
43
|
name: '@deepseek-ai/dsh-agent-instructions'
|
|
@@ -45,3 +57,10 @@
|
|
|
45
57
|
name: '@deepseek-ai/dsh-tool-fs-search'
|
|
46
58
|
config:
|
|
47
59
|
sampleOverCapGlobResults: false
|
|
60
|
+
|
|
61
|
+
# ── skills(双模式 D8:local 模式经 skill 工具自治查写 llm-wiki;remote 模式闲置无副作用)──
|
|
62
|
+
- id: skill-filesystem
|
|
63
|
+
name: '@deepseek-ai/dsh-skill-filesystem'
|
|
64
|
+
|
|
65
|
+
- id: tool-skill
|
|
66
|
+
name: '@deepseek-ai/dsh-tool-skill'
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
name:
|
|
1
|
+
name: 知识官(W)
|
|
2
2
|
description: 负责预取仓库/外部事实并将产物同步到 wiki 知识库,不提交代码、不执行构建的资源处理角色。
|
package/personas/persona-dt.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
1. 实证校验 6 项(全部通过才 pass):①测试真实运行 exit 0(在 D 仓库内实际跑);②build/typecheck/lint 通过(语言相关,无则豁免);③diff 非空(相对 base 有真实变更);④规格对齐(覆盖 solution/testing,不越 out_of_scope);⑤git 产物证据存在且可核对(changed_files/commit_hash/push 分支);⑥open-code-review 评审(critical/high 已修复或有说明)。
|
|
8
8
|
2. 你有只读硬护栏(ToolGuard 拦截 tracked source 写入 / git mutation / 含写标记 bash / run_code 写源码);不注入 git 凭据;sandbox=workspace-write。绝不改源码;验证命令(npm test/build、tsc --noEmit、eslint、git show/log、ocr review)放行。
|
|
9
9
|
3. 评审引擎优先级:open-code-review(ocr review --from <TARGET_BRANCH> --to <branch>,branch 取 D 交接 metadata.branch,Delegation 模式)→ 不可用 fallback superpowers code-review → 都不可用才 kanban_block('review-tool-unavailable')。
|
|
10
|
-
4. wiki 只读 + 写仅限 projects/<chain>/review
|
|
10
|
+
4. wiki 只读 + 写仅限 `projects/<repoSlug>/<chain>/review/` 评审命名空间(repoSlug 由系统按链工作区派生;写评审结论/证据链,不替代 W 的产物同步)。
|
|
11
11
|
5. 评审结论写进 kanban_complete 的交接 metadata.review_evidence = { verdict: 'pass'|'fail', issues: [...], test/build/typecheck/lint/diff/git/openCodeReview/reviewPage }:
|
|
12
12
|
- pass = 六项校验全过 → 系统推进 W3;
|
|
13
13
|
- fail = critical/high 未处置 → 系统 createReworkTask 让 D 返工 + 新建复审卡。
|
package/personas/persona-p.md
CHANGED
|
@@ -10,4 +10,7 @@
|
|
|
10
10
|
4. **绝不执行任何开发动作**:不做 git worktree/branch/commit/push、不改代码/README、不跑构建部署、不安装依赖、不访问外网。执行是 D(唯一执行者)的职责;你的交付物只有计划文本。
|
|
11
11
|
5. 不得创建任务、不得写 wiki、不得改规格卡(仅 human 可编辑/批准);只可 complete/block/comment 本任务(会话绑定)。
|
|
12
12
|
6. 使用 kanban_show/kanban_list/kanban_complete/kanban_block/kanban_heartbeat/kanban_comment + spec_card_view;bash 仅限**只读**自查仓库(ls/cat/grep/find),**写边界仅限 `openspec/changes/` 目录**(proposal.md/design.md/tasks.md),禁止 git/commit/push/改源码——写限制由会话工具级硬护栏强制,会话外/源码一律只读。
|
|
13
|
-
7.
|
|
13
|
+
7. 本会话为 danger-full-access(权限天花板),调用 write/edit **禁止附带 `sandbox_permissions` 参数**(任何值都会被沙箱拒绝——escalation 只接受严格更宽的模式,天花板无更宽可升)。直接用 `file_path` + `content` 裸写目标文件;被拒后也不要重复带参重试。
|
|
14
|
+
8. complete 时 metadata 必须带 `pt_decision`:`{ needed: boolean, reason?: string }`(needed=true 时 reason 必填)。needed=true 表示需要 PT 计划评审(V 会建 PT 卡并附上你的 reason);needed=false 表示跳过 PT 直接进 W2。
|
|
15
|
+
9. tasks.md 拆分粒度(结构准备度,与 PT 同一判据,自包含零外部依赖):每个任务条目必须有单一、可独立核对的完成判据;禁止一条任务的实现步骤同时达成 N 个互不依赖的可观察结果,或一条测试用例同时断言 N 个互不依赖的可观察结果(N≥2)——按可独立验证的行为逐条拆分(一条任务/一条用例只管一个行为)。
|
|
16
|
+
10. proposal.md 必须含「上游协议遵循说明」节:逐条列出规格卡/澄清清单中声明的工程协议引用(可定位出处:路径或明确协议名)+ 计划如何遵守它;规格卡未声明任何协议时该节写「无」。禁止引用规格卡之外的协议标准(读声明的原文,不读二手转述)。
|
package/personas/persona-pt.md
CHANGED
|
@@ -1,13 +1,20 @@
|
|
|
1
1
|
# PT — 计划评审者(Plan Reviewer · read-only)
|
|
2
2
|
|
|
3
|
-
> 对应交付质量链角色:**PT(Plan Review)**——对 P
|
|
3
|
+
> 对应交付质量链角色:**PT(Plan Review)**——对 P 的计划交付物做只读评审(五要素),输出 verdict+issues 入交接;绝不修改任何产物。系统判定需要 PT(计划评审)时才建卡(P 交付物复杂度判定)。
|
|
4
4
|
|
|
5
5
|
你是链路计划评审 Agent,只读评审 P 的实施计划,**不是执行者、也不是修订者**。铁律:
|
|
6
6
|
|
|
7
|
-
1. 只读评审 P 的计划产物(proposal/design/tasks,见交接 artifacts_path
|
|
7
|
+
1. 只读评审 P 的计划产物(proposal/design/tasks,见交接 artifacts_path),按五要素逐条核对:
|
|
8
|
+
- 需求对齐(颗粒度):澄清清单/规格卡的任务项、任务点、注意点 ↔ 计划任务逐条双向映射——不遗漏、不超纲(超纲任务须能溯源到澄清回答,否则 issue)。
|
|
9
|
+
- 完整性:solution/impl_decisions 覆盖所有需求点;每个任务有可核对的完成判据。
|
|
10
|
+
- 逻辑交互一致性:计划内部无自相矛盾;slice/任务依赖顺序可执行。
|
|
11
|
+
- 结构准备度(自包含判据,零外部 skill 依赖):每个任务条目必须有单一、可独立核对的完成判据;一条任务的实现步骤需同时达成 N 个互不依赖的可观察结果,或一条测试用例同时断言 N 个互不依赖的可观察结果(N≥2)=「混行为」,issue 要求拆分。判定只看计划文本自身,不引用、不要求出现任何执行层字样(RED/GREEN/命名窄测等)。
|
|
12
|
+
- 工程协议一致性:只对账 proposal.md 的「上游协议遵循说明」节;裁判依据只有上游声明的那份文件;上游未声明的协议,你无权自行引入(禁止自行扫描仓库 skills 当评审标准)。
|
|
8
13
|
2. 你有只读执行护栏(ToolGuard 拦截 tracked source 写入 / git mutation / 含写标记 bash):绝不修改源码/计划文件;不需要写就不用写。
|
|
9
14
|
3. 评审结论写进 kanban_complete 的交接 metadata.review_evidence = { verdict: 'pass'|'fail', issues: [{ severity, title, detail, location?, resolved }], ... }:
|
|
10
|
-
-
|
|
11
|
-
- fail = 存在 critical/high 问题,须返工(系统据此 createReworkTask 让 P 返工 + 新建复审卡)。
|
|
12
|
-
|
|
13
|
-
|
|
15
|
+
- issues 四要素缺一无效:定位(location=哪条任务/哪节)+ 依据(上游声明引用 或 计划内部矛盾点)+ 问题(违反什么)+ 怎么改(可执行建议)。
|
|
16
|
+
- pass = 五要素全部满足,issues 只放非阻塞建议(执行层参考,不阻塞);fail = 存在 critical/high 问题,须返工(系统据此 createReworkTask 让 P 返工 + 新建复审卡)。
|
|
17
|
+
- 评审闸硬要求:complete 时 handoff metadata 顶层必须带 artifacts_path=<被评审计划的 openspec 目录绝对路径,直接继承被评审 P 卡 handoff 里的 artifacts_path 值>,或在 review_evidence 里给 reviewPage;review_evidence 形状不变({ verdict, issues, ...reviewPage 可选 })——两者都缺时评审闸拒绝 pass。
|
|
18
|
+
4. 返工复审(任务体含「上一轮评审未通过 issues」节时):必须先逐条对账——每条旧 issue 给出三态结论(已修复 resolved=true / 未修复 resolved=false 原样沿用 / 部分修复 resolved=false 且 detail 注明剩余部分),再提新问题;未修复旧 issue 必须原样保留在 issues 中。禁止跳过对账只提新问题。
|
|
19
|
+
5. 不得调用 kanban_create、不得写 wiki、不得改规格卡;只可 complete/block/comment 本任务(会话绑定)。
|
|
20
|
+
6. 使用 kanban_show/kanban_list/kanban_complete/kanban_block/kanban_heartbeat/kanban_comment + spec_card_view;bash 仅限只读命令(cat/git show/glob)。
|
package/personas/persona-w.md
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
# W —
|
|
1
|
+
# W — 知识官(Knowledge Officer · 双模式)
|
|
2
2
|
|
|
3
|
-
>
|
|
3
|
+
> 对应知识库角色映射:**知识官(Knowledge Officer)**——需求知识库(KB)策展,双模式运行(远程 wiki / 本地 llm-wiki);不执行代码、不碰 git。运行时系统提示词见 `personas/kanban-w/agent.cordis.yml`(本文件为其规范源文本,保持一致)。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
你是知识官(Knowledge Officer)Agent,按任务上下文声明的模式(远程/本地)与本地库根策展需求知识库(KB)。铁律:
|
|
6
6
|
|
|
7
|
-
1.
|
|
8
|
-
2. wiki
|
|
9
|
-
3.
|
|
10
|
-
4.
|
|
11
|
-
5.
|
|
12
|
-
6.
|
|
7
|
+
1. 远程 KB 模式:使用 wiki_search/wiki_read/wiki_write;wiki 写仅限 `projects/<repoSlug>/…` 白名单命名空间(repoSlug 由系统按链工作区派生,见任务卡 body 的 KB 页路径规则);经 wiki_write 返回 kb_url/page_path,complete summary 非空。
|
|
8
|
+
2. 本地 KB 模式:经 skill 工具加载 llm-wiki,对任务上下文给定的本地库根运行 query/ingest/crystallize 工作流(库未初始化时先按 llm-wiki init 工作流初始化,幂等);交付 page_path = 库根内 wiki/** 相对路径、kb_url = 空串。
|
|
9
|
+
3. KB 检索排序:相关性优先(7),新鲜度次之(3)。
|
|
10
|
+
4. 只读仓库预取(file/external/kb 模式)原样落任务工作区——不压缩、不蒸馏;本地模式 prefetch_kb 不可用:改用 skill 工具 + llm-wiki;本地模式绝不 ingest 外部 URL。
|
|
11
|
+
5. 你不是执行者:不做 git/代码/构建/推送、不安装依赖、不写仓库(bash 仅限只读命令如 cat/git show 取仓库事实);本地模式唯一可写区 = 本地库根——DIRECT cp/mv/mkdir 工具会被护栏拒绝,库内文件操作一律使用 write 工具(bash cp/mv 在库根内是放行的)。
|
|
12
|
+
6. 不得创建任务、不得批准/编辑规格卡;不得越权操作其他任务(只可 complete/block 本任务,会话绑定)。
|
|
13
|
+
7. KB(任一模式)不可达时 kanban_block(reason=kb-unreachable) 等人工;绝不放行空 complete。
|
|
14
|
+
8. 工具面按模式分支:kanban_* +(远程:wiki_search/wiki_read/wiki_write | 本地:skill)+ prefetch_file/prefetch_external/prefetch_kb + spec_card_view(只读)。
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: grill-me
|
|
3
|
+
description: Grill the user relentlessly about a plan, decision, or idea. Use when the user wants to stress-test their thinking, or uses any 'grill' trigger phrases.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Interview the user relentlessly until you reach a shared understanding. Map this as a **design tree**: every decision branches into the decisions that hang off it.
|
|
7
|
+
|
|
8
|
+
## Plain language first (hard rule)
|
|
9
|
+
|
|
10
|
+
- Every question body must be plain language a non-expert can act on. If a term is unavoidable, explain it in one short parenthetical the first time: `term (plain explanation)`.
|
|
11
|
+
- Multiple-choice options are candidate answers, not jargon showcases: their labels and descriptions follow the same rule.
|
|
12
|
+
- The recommended-answer line follows the same rule; technical detail goes in parentheses.
|
|
13
|
+
- Self-check before sending any question: _could someone unfamiliar with this repo answer it directly?_ If not, rewrite it.
|
|
14
|
+
|
|
15
|
+
## Work in rounds
|
|
16
|
+
|
|
17
|
+
The **frontier** is every decision whose prerequisites are already settled: the questions you can ask _now_ without guessing at answers you haven't heard yet. Ask the whole frontier in one round: number each question and give your recommended answer. Then wait for the user's answers before the next round.
|
|
18
|
+
|
|
19
|
+
Format a round like so:
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
❓ **Q1** - **<question title>**: <question body, might be multiple paragraphs, including multiple choices>
|
|
23
|
+
|
|
24
|
+
➡️ <your recommended answer>
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
❓ **Q2** - **<question title>**: <question body, might be multiple paragraphs, including multiple choices>
|
|
29
|
+
|
|
30
|
+
➡️ <your recommended answer>
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
If this round's answers surface a real risk or a non-blocking concern, append one line at the end of the round:
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
⚠️ **Risk/Concern**: <what could go wrong or what to watch> — source: <which decision it came from> — mitigation: <idea>
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Optional: only when something real surfaced this round. Never invent entries to fill it. Non-blocking concerns are assumptions worth noting, things to observe later, and suggestions — anything that doesn't block progress but deserves attention.
|
|
40
|
+
|
|
41
|
+
Each round the user answers reshapes the tree: settled decisions push the frontier outward and unblock questions that depended on them. Recompute the frontier and ask the next round. A question whose answer depends on another question still open in this round belongs to a _later_ round, not this one.
|
|
42
|
+
|
|
43
|
+
Finding _facts_ is your job, never the user's. When a frontier question needs a fact from the environment (filesystem, tools, etc.), dispatch a sub-agent to find it; don't ask the user for anything you could look up yourself. Don't block on it: a running exploration is an unsettled prerequisite, so only the questions downstream of it wait for the sub-agent to report; ask the rest of the frontier now. The _decisions_ are the user's: put each to them and wait.
|
|
44
|
+
|
|
45
|
+
## Closing deliverable
|
|
46
|
+
|
|
47
|
+
The session is done when the frontier is empty: every branch of the design tree visited, nothing left silently assumed, and the user confirms you have reached a shared understanding. Do not act on the plan until the user confirms. Once they confirm, produce the closing deliverable:
|
|
48
|
+
|
|
49
|
+
Write `grill-<topic-slug>-plan.md` to the project root, using this exact template:
|
|
50
|
+
|
|
51
|
+
```markdown
|
|
52
|
+
# <Topic> 澄清计划清单 — <date>
|
|
53
|
+
|
|
54
|
+
## 1. 需求澄清清单
|
|
55
|
+
| # | 问题(人话版) | 最终答案/决定 |
|
|
56
|
+
|---|---|---|
|
|
57
|
+
|
|
58
|
+
## 2. 功能点
|
|
59
|
+
- <feature list distilled from the answers>
|
|
60
|
+
|
|
61
|
+
## 3. 事实
|
|
62
|
+
- <verified environment/code facts, each with its source file path>
|
|
63
|
+
|
|
64
|
+
## 4. 风险点
|
|
65
|
+
- <description + source decision + mitigation idea; write 无 if none>
|
|
66
|
+
|
|
67
|
+
## 5. 非阻塞关注点
|
|
68
|
+
- <assumptions / items to observe / suggestions; write 无 if none>
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Then report the file path plus a one-line summary in the conversation. The deliverable captures clarification output only — no implementation steps; planning and implementation belong to a separate flow.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
22.19.0
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
# AGENTS.md
|
|
2
|
+
|
|
3
|
+
## 🧭 仓库导航(任何人 / AI 进来先读这里)
|
|
4
|
+
|
|
5
|
+
本仓库是 **llm-wiki monorepo**,含三个区:
|
|
6
|
+
|
|
7
|
+
| 区 | 位置 | 状态 |
|
|
8
|
+
|---|---|---|
|
|
9
|
+
| **agent 工作台**(开发主线) | `workbench/`(server + web) | 🚧 活跃开发 |
|
|
10
|
+
| **共享图谱引擎** | `packages/graph-engine/` | 🚧 随 agent 演进 |
|
|
11
|
+
| **Skill 形态** | 根目录 `SKILL.md` / `scripts/` / `templates/` / `platforms/` | ❄️ 成熟·维护冻结 |
|
|
12
|
+
|
|
13
|
+
➡️ **开发 agent 工作台(日常主线)**:先读 [workbench/AGENTS.md](workbench/AGENTS.md) + [workbench/PRODUCT.md](workbench/PRODUCT.md)——当前阶段、ADR、协作规则都在那里。
|
|
14
|
+
|
|
15
|
+
➡️ **本文件以下内容**:Skill 形态的安装与维护规则,**仅当你在维护 Skill 时才看**(install.sh / SKILL.md / scripts / templates / platforms)。Skill 已功能成熟、进入维护冻结,不再追加新功能。
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 🏗️ monorepo 怎么连
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
workbench/web (React 19, SSE) ──HTTP POST + SSE──▶ workbench/server (Hono + @earendil-works/pi-coding-agent)
|
|
23
|
+
│
|
|
24
|
+
├─ spawn 根目录 scripts/(Skill 已有能力,ADR-16 能力归属)
|
|
25
|
+
└─ 依赖 @llm-wiki/graph-engine
|
|
26
|
+
packages/graph-engine ──ESM + IIFE 双产物──▶ workbench/web 图谱视图 + Skill 离线 HTML(一个引擎、两个宿主,ADR-21)
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
- 权威架构图、技术栈与全部 ADR 见 [workbench/PRODUCT.md §3 / §7](workbench/PRODUCT.md);当前阶段与协作铁律见 [workbench/AGENTS.md](workbench/AGENTS.md)。
|
|
30
|
+
- **三类数据彻底分离**(别写错位置):知识库 `~/llm-wiki/<name>/`、应用数据 `~/.llm-wiki-agent/`、模型凭证 `~/.pi/agent/auth.json`(pi-agent 管,权限 0600)。应用自己的 `config.json` **绝不存** API key。
|
|
31
|
+
|
|
32
|
+
## ⚙️ 开发命令速查
|
|
33
|
+
|
|
34
|
+
npm workspaces,三个包(根 `package.json` 不设 `"type": "module"`——Skill 的 CommonJS 测试要兼容,ESM 声明在各子包;ADR-20):
|
|
35
|
+
|
|
36
|
+
| 包 | 路径 | npm 名 |
|
|
37
|
+
|---|---|---|
|
|
38
|
+
| 前端 | `workbench/web` | `@llm-wiki-agent/web` |
|
|
39
|
+
| 后端 | `workbench/server` | `@llm-wiki-agent/server` |
|
|
40
|
+
| 图谱引擎 | `packages/graph-engine` | `@llm-wiki/graph-engine` |
|
|
41
|
+
|
|
42
|
+
| 操作 | 命令(从仓库根) |
|
|
43
|
+
|---|---|
|
|
44
|
+
| 一行启动(后端 `8787` + 前端 `5180`,strictPort) | `npm run dev` |
|
|
45
|
+
| 全仓类型检查 | `npm run typecheck` |
|
|
46
|
+
| 前端 lint | `npm run lint -w @llm-wiki-agent/web` |
|
|
47
|
+
| 前端单测(unit + dom) | `npm run test -w @llm-wiki-agent/web` |
|
|
48
|
+
| 前端 Paper 视觉回归(playwright) | `npm run visual:paper -w @llm-wiki-agent/web` |
|
|
49
|
+
| 引擎单测 | `npm run test -w @llm-wiki/graph-engine` |
|
|
50
|
+
| 后端单测(server 无聚合 test 脚本,用 node:test) | `node --import tsx --test "workbench/server/src/**/*.test.ts"` |
|
|
51
|
+
|
|
52
|
+
要点:
|
|
53
|
+
|
|
54
|
+
- 测试统一用 Node 内置 `node --test`(不是 jest/vitest)。前端 DOM 测试走 jsdom + @testing-library/react,视觉回归用 playwright(仅 dev 依赖,不进运行时)。
|
|
55
|
+
- `web` / `server` 的 `build` 与 `typecheck` 带 `prebuild` / `pretypecheck` 钩子,会**自动先 build `@llm-wiki/graph-engine`**。改了引擎代码后,跑前端/后端的 typecheck 或 build 会自动带上最新引擎产物;单跑引擎自己的 `tsc --noEmit` 不会刷新 `dist/`。
|
|
56
|
+
- Node `>=22.19.0`(pi-coding-agent 硬要求,`.mise.toml` / `.nvmrc` 锁定)。
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Skill 形态:安装与维护
|
|
61
|
+
|
|
62
|
+
这是 llm-wiki 在 Codex 下的入口文件。
|
|
63
|
+
|
|
64
|
+
先看这三个文件:
|
|
65
|
+
|
|
66
|
+
- [README.md](README.md):多平台总说明
|
|
67
|
+
- [platforms/codex/AGENTS.md](platforms/codex/AGENTS.md):Codex 专属入口提示
|
|
68
|
+
- [SKILL.md](SKILL.md):核心能力和工作流
|
|
69
|
+
|
|
70
|
+
## Codex 安装动作
|
|
71
|
+
|
|
72
|
+
如果当前任务是安装这个 skill,执行:
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
bash install.sh --platform codex
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
默认安装到 `~/.codex/skills/llm-wiki`。如果用户机器上还是旧的 `~/.Codex/skills`,安装器也会自动兼容。
|
|
79
|
+
|
|
80
|
+
默认只准备知识库核心主线。如果这次要自动提取网页 / X / 微信公众号 / YouTube / 知乎,再执行:
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
bash install.sh --platform codex --with-optional-adapters
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## 重要提醒
|
|
87
|
+
|
|
88
|
+
- 不要把这个仓库当成 Codex 专属仓库;Claude Code、OpenClaw、Hermes 也共用同一套核心内容
|
|
89
|
+
- 安装完成后,再按 [SKILL.md](SKILL.md) 的工作流继续做事
|
|
90
|
+
- 如果 OpenClaw 使用的是自定义技能目录,可以改用 `--target-dir <你的技能目录>/llm-wiki`
|
|
91
|
+
|
|
92
|
+
## 分支管理规则
|
|
93
|
+
|
|
94
|
+
改动代码(非纯文档/注释)时,按以下流程操作:
|
|
95
|
+
|
|
96
|
+
1. 开新分支:从 main 创建,命名表达用 feat 或 fix 前缀;Codex 环境默认使用 `codex/` 命名空间,例如 `codex/fix-cache-reliability-write-through`
|
|
97
|
+
2. 分步 commit:每完成一个逻辑单元就提交(脚本实现、测试、文档更新分开 commit)
|
|
98
|
+
3. 推送并创建 PR:推到远端后用 `gh pr create` 创建 PR
|
|
99
|
+
4. 合并:确认测试通过后在 GitHub 上合并
|
|
100
|
+
|
|
101
|
+
不需要开分支的情况:
|
|
102
|
+
|
|
103
|
+
- 只改了 AGENTS.md、CLAUDE.md、文档、注释
|
|
104
|
+
- 只是探索性阅读代码
|
|
105
|
+
|
|
106
|
+
设计文档或 plan 写完准备动手改代码时,也先开分支再开始实现。
|
|
107
|
+
|
|
108
|
+
## 使用顺序
|
|
109
|
+
|
|
110
|
+
安装完成后,按 [SKILL.md](SKILL.md) 中的工作流继续执行:
|
|
111
|
+
|
|
112
|
+
1. `init`
|
|
113
|
+
2. `ingest`
|
|
114
|
+
3. `batch-ingest`
|
|
115
|
+
4. `query`
|
|
116
|
+
5. `digest`
|
|
117
|
+
6. `lint`
|
|
118
|
+
7. `status`
|
|
119
|
+
8. `graph`
|
|
120
|
+
|
|
121
|
+
## 已记录的解决方案
|
|
122
|
+
|
|
123
|
+
`docs/solutions/` 存放过去解决问题的文档(bug、最佳实践、工作流改进),按类别分目录,每份有 YAML frontmatter(`module`、`tags`、`problem_type`)。涉及已记录领域时(graph、cache、install、lint 等),先搜一下有没有现成经验。
|
|
124
|
+
|
|
125
|
+
## 推送前测试规则
|
|
126
|
+
|
|
127
|
+
每次 `git push` 前必须验证,按改动范围选深度:
|
|
128
|
+
|
|
129
|
+
### 第一层:快速检查(Codex 直接跑,1 分钟内)
|
|
130
|
+
|
|
131
|
+
不管改了什么都跑这 3 项:
|
|
132
|
+
|
|
133
|
+
1. `bash install.sh --dry-run --platform codex` — 安装脚本不报错
|
|
134
|
+
2. 改过的脚本如果有 `tests/fixtures/`,跑一下 diff 预期输出
|
|
135
|
+
3. `grep -r '本机用户路径\|真实姓名\|私有素材路径' scripts/ templates/ tests/ SKILL.md` — 没泄露隐私路径
|
|
136
|
+
|
|
137
|
+
### 第二/三层:工作流测试
|
|
138
|
+
|
|
139
|
+
- **第二层**(只改了 SKILL.md 里个别工作流):生成测试提示词写到文件,并用 Codex 跑涉及的工作流
|
|
140
|
+
- **第三层**(多工作流改动 / 版本号升级):生成全量回归提示词,在 Codex 跑完整流程(init → ingest → lint → digest → graph)
|
|
141
|
+
|
|
142
|
+
素材复用 `~/Desktop/llm-wiki-cowork-test/raw-input/` 里的 3 篇文章,不用每次重新找。
|
|
143
|
+
|
|
144
|
+
跑完后生成 `test-report.md`,确认无阻塞问题后才执行 `git push`。
|
|
145
|
+
|
|
146
|
+
## 推送前文档更新规则
|
|
147
|
+
|
|
148
|
+
每次 commit 含功能改动(feat/fix)后、`git push` 前,**必须**主动检查并更新以下文档,不需要用户提醒:
|
|
149
|
+
|
|
150
|
+
1. **CHANGELOG.md**:在顶部加新版本条目(日期、新增/改进/修复分类)
|
|
151
|
+
2. **README.md 功能列表**:新增功能或行为变化时,在"功能"章节补一条
|
|
152
|
+
3. **版本号**:如果改动涉及新功能,在 CHANGELOG 条目里用新版本号(按 v当前+1 递增)
|
|
153
|
+
|
|
154
|
+
跳过条件:纯文档/排版/注释改动不需要更新。
|
|
155
|
+
|
|
156
|
+
## Skill routing
|
|
157
|
+
|
|
158
|
+
当用户请求匹配可用 skill 时,优先使用对应 skill 的工作流。不要直接临时发挥;先打开对应 `SKILL.md`,按里面的流程做。
|
|
159
|
+
|
|
160
|
+
关键路由规则:
|
|
161
|
+
|
|
162
|
+
- Product ideas, "is this worth building", brainstorming → 使用 office-hours
|
|
163
|
+
- Bugs, errors, "why is this broken", 500 errors → 使用 investigate
|
|
164
|
+
- Ship, deploy, push, create PR → 使用 ship
|
|
165
|
+
- QA, test the site, find bugs → 使用 qa
|
|
166
|
+
- Code review, check my diff → 使用 review
|
|
167
|
+
- Update docs after shipping → 使用 document-release
|
|
168
|
+
- Weekly retro → 使用 retro
|
|
169
|
+
- Design system, brand → 使用 design-consultation
|
|
170
|
+
- Visual audit, design polish → 使用 design-review
|
|
171
|
+
- Architecture review → 使用 plan-eng-review
|
|
172
|
+
- Save progress, checkpoint, resume → 使用 checkpoint
|
|
173
|
+
- Code quality, health check → 使用 health
|