dsh-auto-review 0.7.0 → 0.8.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/CHANGELOG.md +14 -0
- package/README.es.md +37 -17
- package/README.hi.md +37 -17
- package/README.md +39 -18
- package/README.pt.md +37 -17
- package/README.zh.md +37 -17
- package/lib/index.js +27 -17
- package/lib/types/audit.d.ts +11 -9
- package/lib/types/audit.d.ts.map +1 -1
- package/lib/types/audit.js +22 -15
- package/lib/types/audit.js.map +1 -1
- package/lib/types/runtime.d.ts +4 -1
- package/lib/types/runtime.d.ts.map +1 -1
- package/lib/types/runtime.js +7 -4
- package/lib/types/runtime.js.map +1 -1
- package/package.json +27 -1
- package/src/audit.ts +21 -14
- package/src/runtime.ts +7 -4
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to `dsh-auto-review` are documented here. The repo is pre-release; versions follow the DeepSeek Harness `0.1.0-rc.x` target runtime and bump on every behavior change.
|
|
4
4
|
|
|
5
|
+
## [0.8.0] - 2026-08-30
|
|
6
|
+
|
|
7
|
+
### Changed
|
|
8
|
+
|
|
9
|
+
- Host `0.1.2-alpha.1` compatibility: master removed the `ignorable` envelope (42dc2a46c2) and fail-closes on unknown session event types, so `isUnmarkedHostVersion` now also classifies `0.1.2-alpha.1`+ lines as unmarked, and an unresolvable peer version fails closed BEFORE the first append (the append probe now only runs for recognized marker-aware future lines) — a probe append would otherwise pollute the log and make the session unloadable. `allowUnmarkedAudit: true` still opts back in.
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
|
|
13
|
+
- Test harness derives synthetic tool-call ids from `dsh-tools`' `ToolExecution['callId']` instead of importing `CallId` (renamed `ToolCallId` on host HEAD), keeping `typecheck` (checkout) and the published `0.1.1-rc.2` types both green.
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- Declared the five client `@deepseek-ai/dsh-client-*` services (`dsh-client-connection`, `dsh-client-runtime`, `dsh-client-locale`, `dsh-client-ui-slots`, `dsh-client-ui-conversation`) as optional peerDependencies (via `peerDependenciesMeta.optional`) to match the client `inject` manifest. Added an install note to run `pnpm approve-builds` for the `koffi`/`node-pty` build scripts when pnpm reports `ERR_PNPM_IGNORED_BUILDS`.
|
|
18
|
+
|
|
5
19
|
## [0.7.0] — 2026-08-26
|
|
6
20
|
|
|
7
21
|
### Added
|
package/README.es.md
CHANGED
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
*Cuando una acción cruza el límite del sandbox, un segundo modelo lee la evidencia y devuelve un veredicto con su razón — para que los humanos no aprueben nada y nada inseguro se cuele.*
|
|
8
8
|
|
|
9
|
+
> **Repositorio oficial.** Este es el único repositorio oficial de dsh-auto-review, mantenido por PerryLink. Los repositorios del mismo nombre bajo otras cuentas no están afiliados.
|
|
10
|
+
|
|
9
11
|
[](LICENSE)
|
|
10
12
|
[](https://github.com/topics/dsh-plugin)
|
|
11
13
|
[](#)
|
|
@@ -67,6 +69,7 @@ De fábrica, el parche incluido revisa con IA `bash` y `write`; todas las demás
|
|
|
67
69
|
|
|
68
70
|
- **Canal git** (último `main`): `dsh plugin --profile web add "github:PerryLink/dsh-auto-review#main"` — la compilación aislada de `prepare` necesita la única clave `allowBuilds: { esbuild: true }` que imprime el CLI de `dsh` para `dsh-auto-review`.
|
|
69
71
|
- **Canal npm** (versiones publicadas): `dsh plugin --profile web add dsh-auto-review`.
|
|
72
|
+
- **Canal 1024 store**: `npm i -g dsh1024` una vez, luego `dsh1024 plugin --profile web add dsh-auto-review` (cuenta para el ranking de instalaciones de [deepseek1024.com](https://deepseek1024.com)).
|
|
70
73
|
- **Canal tarball**: `pnpm pack` en este repo y luego `dsh plugin --profile web add ./dsh-auto-review-<version>.tgz`.
|
|
71
74
|
- **Desinstalación**: `dsh plugin --profile web remove dsh-auto-review` (o elimina la fila del parche de perfil).
|
|
72
75
|
|
|
@@ -354,25 +357,42 @@ Estructura del repositorio: `src/index.ts` (contrato del plugin) · `src/config.
|
|
|
354
357
|
|
|
355
358
|
## Familia de plugins DSH de PerryLink
|
|
356
359
|
|
|
357
|
-
Este proyecto es uno de los
|
|
360
|
+
Este proyecto es uno de los [33 complementos de DeepSeek Harness](https://github.com/PerryLink) mantenidos por [PerryLink](https://github.com/PerryLink). Si este te ayuda, probablemente los demás también:
|
|
358
361
|
|
|
359
|
-
| Plugin |
|
|
362
|
+
| Plugin | One-liner |
|
|
360
363
|
|---|---|
|
|
361
|
-
| [dsh-
|
|
362
|
-
| [dsh-
|
|
363
|
-
| [dsh-
|
|
364
|
-
| [dsh-
|
|
365
|
-
| [dsh-
|
|
366
|
-
| [dsh-
|
|
367
|
-
| [dsh-
|
|
368
|
-
| **[dsh-
|
|
369
|
-
| [dsh-
|
|
370
|
-
| [dsh-
|
|
371
|
-
| [dsh-
|
|
372
|
-
| [dsh-
|
|
373
|
-
| [dsh-github](https://github.com/PerryLink/dsh-github) | Integración de PR/issues de GitHub para DSH, cada escritura controlada por aprobación |
|
|
374
|
-
| [dsh-
|
|
375
|
-
| [dsh-
|
|
364
|
+
| **[dsh-dsh-background-agents](https://github.com/PerryLink/dsh-dsh-background-agents)** | Agentes hijos en segundo plano durables con barra lateral de UI web, mensajería e interrupción | |
|
|
365
|
+
| **[dsh-dsh-budget](https://github.com/PerryLink/dsh-dsh-budget)** | Gobernanza de costes para DeepSeek Harness: presupuestos, carbono y latencia en un panel. | |
|
|
366
|
+
| **[dsh-dsh-checkpoint-rewind](https://github.com/PerryLink/dsh-dsh-checkpoint-rewind)** | Equivalente a /rewind de Claude Code: instantáneas, bifurcaciones de sesión, restauración de un solo uso | |
|
|
367
|
+
| **[dsh-dsh-claude-move](https://github.com/PerryLink/dsh-dsh-claude-move)** | Migra sesiones, memoria, habilidades y CLAUDE.md de Claude Code a DSH | |
|
|
368
|
+
| **[dsh-dsh-click](https://github.com/PerryLink/dsh-dsh-click)** | Control de escritorio nativo multiplataforma para DeepSeek Harness — Windows primero. | |
|
|
369
|
+
| **[dsh-dsh-composer-history](https://github.com/PerryLink/dsh-dsh-composer-history)** | Historial de entrada estilo terminal para el compositor web: flechas, búsqueda Ctrl+R | |
|
|
370
|
+
| **[dsh-dsh-data-quality](https://github.com/PerryLink/dsh-dsh-data-quality)** | Comprobaciones de calidad de datasets y verificación de citas (el puente numérico opcional consumido aquí) | |
|
|
371
|
+
| **[dsh-dsh-defend](https://github.com/PerryLink/dsh-dsh-defend)** | Defensa contra inyección de prompts, jailbreak y fuga de secretos para DeepSeek Harness. | |
|
|
372
|
+
| **[dsh-dsh-doublecheck](https://github.com/PerryLink/dsh-dsh-doublecheck)** | Guardián de disciplina de ingeniería: interrogatorio de requisitos, puertas de pruebas, revisión adversaria | |
|
|
373
|
+
| **[dsh-dsh-draw](https://github.com/PerryLink/dsh-dsh-draw)** | Enrutamiento unificado de generación de imágenes estáticas para DeepSeek Harness. | |
|
|
374
|
+
| **[dsh-dsh-fast](https://github.com/PerryLink/dsh-dsh-fast)** | Diagnóstico de rendimiento de solo lectura para DeepSeek Harness. | |
|
|
375
|
+
| **[dsh-dsh-fund-research](https://github.com/PerryLink/dsh-dsh-fund-research)** | Informes de investigación deterministas para fondos mutuos públicos chinos | |
|
|
376
|
+
| **[dsh-dsh-github](https://github.com/PerryLink/dsh-dsh-github)** | Integración de PR/issues de GitHub para DSH, cada escritura controlada por aprobación | |
|
|
377
|
+
| **[dsh-dsh-industry-research](https://github.com/PerryLink/dsh-dsh-industry-research)** | Orquestación de investigación sectorial que sella sus entregables mediante el `ctx.researchReport.assemble` de este plugin | |
|
|
378
|
+
| **[dsh-dsh-library](https://github.com/PerryLink/dsh-dsh-library)** | Base de conocimiento documental local para DeepSeek Harness. | |
|
|
379
|
+
| **[dsh-dsh-local-ai](https://github.com/PerryLink/dsh-dsh-local-ai)** | Integración de modelos locales (Ollama) para DeepSeek Harness. | |
|
|
380
|
+
| **[dsh-dsh-lsp-actions](https://github.com/PerryLink/dsh-dsh-lsp-actions)** | Diagnósticos, formato, autocompletado, acciones de código y renombrado LSP sobre servidores de lenguaje | |
|
|
381
|
+
| **[dsh-dsh-mask](https://github.com/PerryLink/dsh-dsh-mask)** | Middleware de enmascaramiento de PII: anonimiza en el límite del modelo, restaura en la capa de visualización | |
|
|
382
|
+
| **[dsh-dsh-mcp-panel](https://github.com/PerryLink/dsh-dsh-mcp-panel)** | Panel de tiempo de ejecución MCP de solo lectura: comando /mcp + pestaña Settings con estado, herramientas y errores | |
|
|
383
|
+
| **[dsh-dsh-memento](https://github.com/PerryLink/dsh-dsh-memento)** | Memoria entre sesiones controlada por aprobación: costura ctx.memory + SQLite + herramienta de memoria | |
|
|
384
|
+
| **[dsh-dsh-observe](https://github.com/PerryLink/dsh-dsh-observe)** | Exportador de observabilidad OpenTelemetry y Langfuse para DeepSeek Harness. | |
|
|
385
|
+
| **[dsh-dsh-output-styles](https://github.com/PerryLink/dsh-dsh-output-styles)** | Cambio de estilo en tiempo de ejecución equivalente a outputStyles de Claude Code | |
|
|
386
|
+
| **[dsh-dsh-permission-rules](https://github.com/PerryLink/dsh-dsh-permission-rules)** | Reglas de permisos declarativas allow/deny/ask estilo Claude Code con auditoría | |
|
|
387
|
+
| **[dsh-dsh-plugin-guide](https://github.com/PerryLink/dsh-dsh-plugin-guide)** | Base de conocimiento de desarrollo de plugins como habilidad de agente bajo demanda | |
|
|
388
|
+
| **[dsh-dsh-research-report](https://github.com/PerryLink/dsh-dsh-research-report)** | Motor de informes de investigación verificables con evidencia direccionada por contenido | |
|
|
389
|
+
| **[dsh-dsh-score](https://github.com/PerryLink/dsh-dsh-score)** | Puntuación de calidad multidimensional para plugins de DeepSeek Harness. | |
|
|
390
|
+
| **[dsh-dsh-session-pin](https://github.com/PerryLink/dsh-dsh-session-pin)** | Fija sesiones en la barra lateral web con orden durable | |
|
|
391
|
+
| **[dsh-dsh-session-sync](https://github.com/PerryLink/dsh-dsh-session-sync)** | Sincronización de sesiones entre dispositivos para DeepSeek Harness — un espejo git dedicado de tu almacén de sesiones. | |
|
|
392
|
+
| **[dsh-dsh-skill-pack-security](https://github.com/PerryLink/dsh-dsh-skill-pack-security)** | Paquete de habilidades de auditoría de seguridad: escaneo de secretos, revisión de dependencias y cadena de suministro | |
|
|
393
|
+
| **[dsh-dsh-talk](https://github.com/PerryLink/dsh-dsh-talk)** | Bucle de sesión con voz para DeepSeek Harness: háblale y escucha su respuesta. | |
|
|
394
|
+
| **[dsh-dsh-test-drive](https://github.com/PerryLink/dsh-dsh-test-drive)** | Pruebas de instalación y humo aisladas para plugins de DeepSeek Harness. | |
|
|
395
|
+
| **[dsh-dsh-translate](https://github.com/PerryLink/dsh-dsh-translate)** | Traducción de parámetros entre proveedores y reparación determinista de JSON para DeepSeek Harness. | |
|
|
376
396
|
|
|
377
397
|
## Licencia
|
|
378
398
|
|
package/README.hi.md
CHANGED
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
*जब कोई क्रिया सैंडबॉक्स सीमा पार करती है, तो दूसरा मॉडल साक्ष्य पढ़ता है और कारण सहित निर्णय लौटाता है — ताकि मनुष्य कुछ भी स्वीकृत न करें और कुछ भी असुरक्षित छूट न जाए।*
|
|
8
8
|
|
|
9
|
+
> **आधिकारिक रिपॉज़िटरी।** यह PerryLink द्वारा अनुरक्षित dsh-auto-review का एकमात्र आधिकारिक रिपॉज़िटरी है। अन्य खातों के समान-नाम रिपॉज़िटरी इससे संबद्ध नहीं हैं।
|
|
10
|
+
|
|
9
11
|
[](LICENSE)
|
|
10
12
|
[](https://github.com/topics/dsh-plugin)
|
|
11
13
|
[](#)
|
|
@@ -67,6 +69,7 @@ dsh --profile web --dump-config | grep -A4 'id: auto-review'
|
|
|
67
69
|
|
|
68
70
|
- **git चैनल** (नवीनतम `main`): `dsh plugin --profile web add "github:PerryLink/dsh-auto-review#main"` — पृथक `prepare` बिल्ड को वह एकल `allowBuilds: { esbuild: true }` कुंजी चाहिए जो `dsh` CLI `dsh-auto-review` के लिए छापता है।
|
|
69
71
|
- **npm चैनल** (प्रकाशित रिलीज़): `dsh plugin --profile web add dsh-auto-review`।
|
|
72
|
+
- **1024 स्टोर चैनल**: एक बार `npm i -g dsh1024`, फिर `dsh1024 plugin --profile web add dsh-auto-review` ([deepseek1024.com](https://deepseek1024.com) इंस्टॉल रैंकिंग में गिना जाता है)।
|
|
70
73
|
- **tarball चैनल**: इस रेपो में `pnpm pack`, फिर `dsh plugin --profile web add ./dsh-auto-review-<version>.tgz`।
|
|
71
74
|
- **अनइंस्टॉल**: `dsh plugin --profile web remove dsh-auto-review` (या प्रोफ़ाइल पैच से पंक्ति हटाएँ)।
|
|
72
75
|
|
|
@@ -354,25 +357,42 @@ pnpm pack # प्रकाशित tarball
|
|
|
354
357
|
|
|
355
358
|
## PerryLink DSH प्लगइन परिवार
|
|
356
359
|
|
|
357
|
-
यह
|
|
360
|
+
यह प्रोजेक्ट [PerryLink](https://github.com/PerryLink) द्वारा अनुरक्षित [33 DeepSeek Harness प्लगइनों](https://github.com/PerryLink) में से एक है। अगर यह आपकी मदद करता है, तो बाकी भी करेंगे:
|
|
358
361
|
|
|
359
|
-
|
|
|
362
|
+
| Plugin | One-liner |
|
|
360
363
|
|---|---|
|
|
361
|
-
| [dsh-
|
|
362
|
-
| [dsh-
|
|
363
|
-
| [dsh-
|
|
364
|
-
| [dsh-
|
|
365
|
-
| [dsh-
|
|
366
|
-
| [dsh-
|
|
367
|
-
| [dsh-
|
|
368
|
-
| **[dsh-
|
|
369
|
-
| [dsh-
|
|
370
|
-
| [dsh-
|
|
371
|
-
| [dsh-
|
|
372
|
-
| [dsh-
|
|
373
|
-
| [dsh-github](https://github.com/PerryLink/dsh-github) | DSH के लिए GitHub PR/issues एकीकरण, हर लेखन अनुमोदन-द्वारित |
|
|
374
|
-
| [dsh-
|
|
375
|
-
| [dsh-
|
|
364
|
+
| **[dsh-dsh-background-agents](https://github.com/PerryLink/dsh-dsh-background-agents)** | वेब UI साइडबार, संदेश और अवरोधन के साथ टिकाऊ पृष्ठभूमि चाइल्ड एजेंट | |
|
|
365
|
+
| **[dsh-dsh-budget](https://github.com/PerryLink/dsh-dsh-budget)** | DeepSeek Harness के लिए लागत प्रशासन: बजट, कार्बन और विलंबता एक पैनल में। | |
|
|
366
|
+
| **[dsh-dsh-checkpoint-rewind](https://github.com/PerryLink/dsh-dsh-checkpoint-rewind)** | Claude Code /rewind-समतुल्य: स्नैपशॉट, सत्र फ़ॉर्क, एक-बार पुनर्स्थापना | |
|
|
367
|
+
| **[dsh-dsh-claude-move](https://github.com/PerryLink/dsh-dsh-claude-move)** | Claude Code सत्र, मेमोरी, कौशल और CLAUDE.md को DSH में स्थानांतरित करें | |
|
|
368
|
+
| **[dsh-dsh-click](https://github.com/PerryLink/dsh-dsh-click)** | DeepSeek Harness के लिए क्रॉस-प्लेटफ़ॉर्म नेटिव डेस्कटॉप नियंत्रण — Windows पहले। | |
|
|
369
|
+
| **[dsh-dsh-composer-history](https://github.com/PerryLink/dsh-dsh-composer-history)** | वेब कंपोज़र के लिए टर्मिनल-शैली इनपुट इतिहास: तीर, Ctrl+R खोज | |
|
|
370
|
+
| **[dsh-dsh-data-quality](https://github.com/PerryLink/dsh-dsh-data-quality)** | डेटासेट गुणवत्ता जाँच व उद्धरण सत्यापन (यहाँ उपभोग किया गया वैकल्पिक संख्या-सेतु) | |
|
|
371
|
+
| **[dsh-dsh-defend](https://github.com/PerryLink/dsh-dsh-defend)** | DeepSeek Harness के लिए प्रॉम्प्ट-इंजेक्शन, जेलब्रेक और सीक्रेट-लीक रक्षा। | |
|
|
372
|
+
| **[dsh-dsh-doublecheck](https://github.com/PerryLink/dsh-dsh-doublecheck)** | इंजीनियरिंग-अनुशासन रक्षक: आवश्यकताओं की पूछताछ, परीक्षण द्वार, प्रतिद्वंद्वी समीक्षा | |
|
|
373
|
+
| **[dsh-dsh-draw](https://github.com/PerryLink/dsh-dsh-draw)** | DeepSeek Harness के लिए एकीकृत स्थैतिक-छवि निर्माण रूटिंग। | |
|
|
374
|
+
| **[dsh-dsh-fast](https://github.com/PerryLink/dsh-dsh-fast)** | DeepSeek Harness के लिए रीड-ओनली प्रदर्शन डायग्नोस्टिक्स। | |
|
|
375
|
+
| **[dsh-dsh-fund-research](https://github.com/PerryLink/dsh-dsh-fund-research)** | चीनी सार्वजनिक म्यूचुअल फंड के लिए नियतात्मक अनुसंधान रिपोर्ट | |
|
|
376
|
+
| **[dsh-dsh-github](https://github.com/PerryLink/dsh-dsh-github)** | DSH के लिए GitHub PR/issues एकीकरण, हर लेखन अनुमोदन-द्वारित | |
|
|
377
|
+
| **[dsh-dsh-industry-research](https://github.com/PerryLink/dsh-dsh-industry-research)** | उद्योग-अनुसंधान ऑर्केस्ट्रेशन जो इस प्लगिन के `ctx.researchReport.assemble` से डिलीवरेबल सील करता है | |
|
|
378
|
+
| **[dsh-dsh-library](https://github.com/PerryLink/dsh-dsh-library)** | DeepSeek Harness के लिए स्थानीय दस्तावेज़ ज्ञानकोश। | |
|
|
379
|
+
| **[dsh-dsh-local-ai](https://github.com/PerryLink/dsh-dsh-local-ai)** | DeepSeek Harness के लिए स्थानीय-मॉडल (Ollama) एकीकरण। | |
|
|
380
|
+
| **[dsh-dsh-lsp-actions](https://github.com/PerryLink/dsh-dsh-lsp-actions)** | भाषा सर्वरों पर LSP निदान, फ़ॉर्मेटिंग, पूर्णता, कोड क्रियाएँ और नाम बदलना | |
|
|
381
|
+
| **[dsh-dsh-mask](https://github.com/PerryLink/dsh-dsh-mask)** | PII मास्किंग मिडलवेयर: मॉडल सीमा पर अनाम करें, डिस्प्ले लेयर पर पुनर्स्थापित करें | |
|
|
382
|
+
| **[dsh-dsh-mcp-panel](https://github.com/PerryLink/dsh-dsh-mcp-panel)** | केवल-पढ़ने वाला MCP रनटाइम पैनल: /mcp कमांड + स्थिति, टूल और त्रुटियों वाला Settings टैब | |
|
|
383
|
+
| **[dsh-dsh-memento](https://github.com/PerryLink/dsh-dsh-memento)** | अनुमोदन-द्वारित क्रॉस-सत्र मेमोरी: ctx.memory सीम + SQLite + मेमोरी टूल | |
|
|
384
|
+
| **[dsh-dsh-observe](https://github.com/PerryLink/dsh-dsh-observe)** | DeepSeek Harness के लिए OpenTelemetry और Langfuse अवलोकनीयता निर्यातक। | |
|
|
385
|
+
| **[dsh-dsh-output-styles](https://github.com/PerryLink/dsh-dsh-output-styles)** | Claude Code outputStyles-समतुल्य रनटाइम शैली बदलाव | |
|
|
386
|
+
| **[dsh-dsh-permission-rules](https://github.com/PerryLink/dsh-dsh-permission-rules)** | ऑडिट के साथ Claude Code-शैली घोषणात्मक allow/deny/ask अनुमति नियम | |
|
|
387
|
+
| **[dsh-dsh-plugin-guide](https://github.com/PerryLink/dsh-dsh-plugin-guide)** | माँग पर एजेंट कौशल के रूप में प्लगइन-विकास ज्ञान आधार | |
|
|
388
|
+
| **[dsh-dsh-research-report](https://github.com/PerryLink/dsh-dsh-research-report)** | सामग्री-पता साक्ष्य और सीलबंद संस्करणों वाला सत्यापन-योग्य अनुसंधान-रिपोर्ट इंजन | |
|
|
389
|
+
| **[dsh-dsh-score](https://github.com/PerryLink/dsh-dsh-score)** | DeepSeek Harness प्लगिनों की बहु-आयामी गुणवत्ता स्कोरिंग। | |
|
|
390
|
+
| **[dsh-dsh-session-pin](https://github.com/PerryLink/dsh-dsh-session-pin)** | टिकाऊ क्रम के साथ वेब साइडबार में सत्र पिन करें | |
|
|
391
|
+
| **[dsh-dsh-session-sync](https://github.com/PerryLink/dsh-dsh-session-sync)** | DeepSeek Harness के लिए क्रॉस-डिवाइस सत्र सिंक — आपके सत्र स्टोर का एक समर्पित git मिरर। | |
|
|
392
|
+
| **[dsh-dsh-skill-pack-security](https://github.com/PerryLink/dsh-dsh-skill-pack-security)** | सुरक्षा-ऑडिट कौशल पैक: गुप्त स्कैन, निर्भरता और आपूर्ति-श्रृंखला समीक्षा | |
|
|
393
|
+
| **[dsh-dsh-talk](https://github.com/PerryLink/dsh-dsh-talk)** | DeepSeek Harness के लिए आवाज़-प्रथम सत्र लूप: बोलें और उत्तर सुनें। | |
|
|
394
|
+
| **[dsh-dsh-test-drive](https://github.com/PerryLink/dsh-dsh-test-drive)** | DeepSeek Harness प्लगिनों के लिए पृथक इंस्टॉल-एंड-स्मोक टेस्ट ड्राइव। | |
|
|
395
|
+
| **[dsh-dsh-translate](https://github.com/PerryLink/dsh-dsh-translate)** | DeepSeek Harness के लिए वेंडर पैरामीटर अनुवाद और नियतात्मक JSON मरम्मत। | |
|
|
376
396
|
|
|
377
397
|
## लाइसेंस
|
|
378
398
|
|
package/README.md
CHANGED
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
|
|
8
8
|
*When an action crosses the sandbox boundary, a second model reads the evidence and returns a verdict with a reason — so humans approve nothing while nothing unsafe slips through.*
|
|
9
9
|
|
|
10
|
+
> **Official repository.** This is the only official repository of dsh-auto-review, maintained by PerryLink. Same-name repositories under other accounts are not affiliated.
|
|
11
|
+
|
|
10
12
|
[](LICENSE)
|
|
11
13
|
[](https://github.com/topics/dsh-plugin)
|
|
12
14
|
[](#)
|
|
@@ -68,8 +70,10 @@ Out of the box the shipped patch AI-reviews `bash` and `write`; every other tool
|
|
|
68
70
|
|
|
69
71
|
- **git channel** (latest `main`): `dsh plugin --profile web add "github:PerryLink/dsh-auto-review#main"` — the isolated `prepare` build needs the single `allowBuilds: { esbuild: true }` key the `dsh` CLI prints for `dsh-auto-review`.
|
|
70
72
|
- **npm channel** (published releases): `dsh plugin --profile web add dsh-auto-review`.
|
|
73
|
+
- **1024 store channel**: `npm i -g dsh1024` once, then `dsh1024 plugin --profile web add dsh-auto-review` (counts toward the [deepseek1024.com](https://deepseek1024.com) install ranking).
|
|
71
74
|
- **tarball channel**: `pnpm pack` in this repo, then `dsh plugin --profile web add ./dsh-auto-review-<version>.tgz`.
|
|
72
75
|
- **uninstall**: `dsh plugin --profile web remove dsh-auto-review` (or remove the row from the profile patch).
|
|
76
|
+
- **native build scripts**: when `dsh plugin add` stops at `ERR_PNPM_IGNORED_BUILDS` for `koffi` / `node-pty` (pulled in by the eval harness), run `pnpm approve-builds` to approve those build scripts.
|
|
73
77
|
|
|
74
78
|
## Configuration
|
|
75
79
|
|
|
@@ -99,7 +103,7 @@ All tunables are Schemastery `Config` fields (changeable from cordis.yml). An id
|
|
|
99
103
|
| `verdictCacheTtlMs` | `60000` | Reuse a recent verdict for an identical `tool + arguments` fingerprint; `0` disables the cache |
|
|
100
104
|
| `verdictCacheMaxEntries` | `256` | Maximum cached fingerprints before oldest-eviction |
|
|
101
105
|
| `language` | `en` | UI language of the `/auto-review` command output (`en` \| `zh`) |
|
|
102
|
-
| `allowUnmarkedAudit` | `false` | Force session-log audit on hosts that drop the `ignorable` marker (dangerous: unmarked events make sessions unresumable elsewhere); default is detect-and-degrade |
|
|
106
|
+
| `allowUnmarkedAudit` | `false` | Force session-log audit on hosts that drop the `ignorable` marker or fail-closed on unknown event types (host `0.1.2-alpha.1`+) (dangerous: unmarked events make sessions unresumable elsewhere); default is detect-and-degrade |
|
|
103
107
|
|
|
104
108
|
Example (annotated full form: `fixtures/config/config-full.yaml`):
|
|
105
109
|
|
|
@@ -301,7 +305,7 @@ The server is read-only and deterministic: no network, no model, no writes.
|
|
|
301
305
|
|
|
302
306
|
- **Permissions**: the workshop manifest declares `session:append`, `approval:answer`, `subagent:spawn`, `command:register`, and `tools:observe`.
|
|
303
307
|
- **Data**: nothing is stored on disk; the report ring buffer is in-memory and bounded. No network requests of its own.
|
|
304
|
-
- **Session log**: `autoReview/*` events carry reviewer identity, verdict, reason, risk, and duration — appended with the envelope's `ignorable: true` marker so any build loads the log. Hosts whose `Session.append` predates the marker (every released rc line through `0.1.1-rc.2` — no release stamps it yet) are detected before the first append (peer-version pre-check
|
|
308
|
+
- **Session log**: `autoReview/*` events carry reviewer identity, verdict, reason, risk, and duration — appended with the envelope's `ignorable: true` marker so any build loads the log. Hosts whose `Session.append` predates the marker (every released rc line through `0.1.1-rc.2` — no release stamps it yet) are detected before the first append (peer-version pre-check); host `0.1.2-alpha.1`+ removed the envelope entirely and rejects unknown event types on read, so those lines — and unresolvable versions — also fail closed before any append. Audit then degrades to an in-memory mirror with marker-free feedback, so sessions stay loadable everywhere.
|
|
305
309
|
|
|
306
310
|
## Security boundaries
|
|
307
311
|
|
|
@@ -355,25 +359,42 @@ Repository layout: `src/index.ts` (plugin contract) · `src/config.ts` (Schemast
|
|
|
355
359
|
|
|
356
360
|
## PerryLink DSH Plugin Family
|
|
357
361
|
|
|
358
|
-
This project is one of the DeepSeek Harness plugins maintained by [PerryLink](https://github.com/PerryLink). If this one helps you, the others likely will too:
|
|
362
|
+
This project is one of the [33 DeepSeek Harness plugins](https://github.com/PerryLink) maintained by [PerryLink](https://github.com/PerryLink). If this one helps you, the others likely will too:
|
|
359
363
|
|
|
360
364
|
| Plugin | One-liner |
|
|
361
365
|
|---|---|
|
|
362
|
-
| [dsh-
|
|
363
|
-
| [dsh-
|
|
364
|
-
| [dsh-
|
|
365
|
-
| [dsh-
|
|
366
|
-
| [dsh-
|
|
367
|
-
| [dsh-
|
|
368
|
-
| [dsh-
|
|
369
|
-
| **[dsh-
|
|
370
|
-
| [dsh-
|
|
371
|
-
| [dsh-
|
|
372
|
-
| [dsh-
|
|
373
|
-
| [dsh-
|
|
374
|
-
| [dsh-github](https://github.com/PerryLink/dsh-github) | GitHub PR/issues integration for DSH, every write gated by approval |
|
|
375
|
-
| [dsh-
|
|
376
|
-
| [dsh-
|
|
366
|
+
| **[dsh-dsh-background-agents](https://github.com/PerryLink/dsh-dsh-background-agents)** | Durable background child agents with a Web UI sidebar, messaging and interrupt | |
|
|
367
|
+
| **[dsh-dsh-budget](https://github.com/PerryLink/dsh-dsh-budget)** | Cost governance for DeepSeek Harness: budgets, carbon, and latency in one panel. | |
|
|
368
|
+
| **[dsh-dsh-checkpoint-rewind](https://github.com/PerryLink/dsh-dsh-checkpoint-rewind)** | Claude Code /rewind-equivalent: snapshots, session forks, one-shot restore | |
|
|
369
|
+
| **[dsh-dsh-claude-move](https://github.com/PerryLink/dsh-dsh-claude-move)** | Migrate Claude Code sessions, memory, skills and CLAUDE.md into DSH | |
|
|
370
|
+
| **[dsh-dsh-click](https://github.com/PerryLink/dsh-dsh-click)** | Cross-platform native desktop control for DeepSeek Harness — Windows first. | |
|
|
371
|
+
| **[dsh-dsh-composer-history](https://github.com/PerryLink/dsh-dsh-composer-history)** | Terminal-style input history for the web composer: arrows, Ctrl+R search | |
|
|
372
|
+
| **[dsh-dsh-data-quality](https://github.com/PerryLink/dsh-dsh-data-quality)** | Dataset quality checks and citation cross-checks (the optional numeric bridge consumed here) | |
|
|
373
|
+
| **[dsh-dsh-defend](https://github.com/PerryLink/dsh-dsh-defend)** | Prompt-injection, jailbreak, and secret-leak defense for DeepSeek Harness. | |
|
|
374
|
+
| **[dsh-dsh-doublecheck](https://github.com/PerryLink/dsh-dsh-doublecheck)** | Engineering-discipline guard: requirements grill, test gates, adversary review | |
|
|
375
|
+
| **[dsh-dsh-draw](https://github.com/PerryLink/dsh-dsh-draw)** | Unified static-image generation routing for DeepSeek Harness. | |
|
|
376
|
+
| **[dsh-dsh-fast](https://github.com/PerryLink/dsh-dsh-fast)** | Read-only performance diagnostics for DeepSeek Harness. | |
|
|
377
|
+
| **[dsh-dsh-fund-research](https://github.com/PerryLink/dsh-dsh-fund-research)** | Deterministic research reports for Chinese public mutual funds | |
|
|
378
|
+
| **[dsh-dsh-github](https://github.com/PerryLink/dsh-dsh-github)** | GitHub PR/issues integration for DSH, every write gated by approval | |
|
|
379
|
+
| **[dsh-dsh-industry-research](https://github.com/PerryLink/dsh-dsh-industry-research)** | Industry research orchestration that seals its deliverables through this plugin's `ctx.researchReport.assemble` | |
|
|
380
|
+
| **[dsh-dsh-library](https://github.com/PerryLink/dsh-dsh-library)** | Local document knowledge base for DeepSeek Harness. | |
|
|
381
|
+
| **[dsh-dsh-local-ai](https://github.com/PerryLink/dsh-dsh-local-ai)** | Local-model (Ollama) integration for DeepSeek Harness. | |
|
|
382
|
+
| **[dsh-dsh-lsp-actions](https://github.com/PerryLink/dsh-dsh-lsp-actions)** | LSP diagnostics, formatting, completion, code actions and rename over language servers | |
|
|
383
|
+
| **[dsh-dsh-mask](https://github.com/PerryLink/dsh-dsh-mask)** | PII masking middleware: anonymize at the model boundary, restore at the display layer | |
|
|
384
|
+
| **[dsh-dsh-mcp-panel](https://github.com/PerryLink/dsh-dsh-mcp-panel)** | Read-only MCP runtime panel: /mcp command + Settings tab with status, tools and errors | |
|
|
385
|
+
| **[dsh-dsh-memento](https://github.com/PerryLink/dsh-dsh-memento)** | Approval-gated cross-session memory: ctx.memory seam + SQLite + memory tool | |
|
|
386
|
+
| **[dsh-dsh-observe](https://github.com/PerryLink/dsh-dsh-observe)** | OpenTelemetry and Langfuse observability exporter for DeepSeek Harness. | |
|
|
387
|
+
| **[dsh-dsh-output-styles](https://github.com/PerryLink/dsh-dsh-output-styles)** | Claude Code outputStyles-equivalent runtime style switching | |
|
|
388
|
+
| **[dsh-dsh-permission-rules](https://github.com/PerryLink/dsh-dsh-permission-rules)** | Claude Code-style declarative allow/deny/ask permission rules with audit | |
|
|
389
|
+
| **[dsh-dsh-plugin-guide](https://github.com/PerryLink/dsh-dsh-plugin-guide)** | Plugin-development knowledge base as an on-demand agent skill | |
|
|
390
|
+
| **[dsh-dsh-research-report](https://github.com/PerryLink/dsh-dsh-research-report)** | Verifiable research-report engine: content-addressed evidence ledger and sealed versions | |
|
|
391
|
+
| **[dsh-dsh-score](https://github.com/PerryLink/dsh-dsh-score)** | Multi-dimensional quality scoring for DeepSeek Harness plugins. | |
|
|
392
|
+
| **[dsh-dsh-session-pin](https://github.com/PerryLink/dsh-dsh-session-pin)** | Pin sessions in the Web sidebar with durable ordering | |
|
|
393
|
+
| **[dsh-dsh-session-sync](https://github.com/PerryLink/dsh-dsh-session-sync)** | Cross-device session sync for DeepSeek Harness — a dedicated git mirror of your session store. | |
|
|
394
|
+
| **[dsh-dsh-skill-pack-security](https://github.com/PerryLink/dsh-dsh-skill-pack-security)** | Security-audit skill pack: secret scan, dependency and supply-chain review | |
|
|
395
|
+
| **[dsh-dsh-talk](https://github.com/PerryLink/dsh-dsh-talk)** | Voice-first session loop for DeepSeek Harness: talk to it, hear it answer. | |
|
|
396
|
+
| **[dsh-dsh-test-drive](https://github.com/PerryLink/dsh-dsh-test-drive)** | Isolated install-and-smoke test drives for DeepSeek Harness plugins. | |
|
|
397
|
+
| **[dsh-dsh-translate](https://github.com/PerryLink/dsh-dsh-translate)** | Vendor parameter translation and deterministic JSON repair for DeepSeek Harness. | |
|
|
377
398
|
|
|
378
399
|
## License
|
|
379
400
|
|
package/README.pt.md
CHANGED
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
*Quando uma ação cruza a fronteira do sandbox, um segundo modelo lê as evidências e devolve um veredito com a razão — para que humanos não aprovem nada e nada inseguro passe despercebido.*
|
|
8
8
|
|
|
9
|
+
> **Repositório oficial.** Este é o único repositório oficial do dsh-auto-review, mantido por PerryLink. Repositórios de mesmo nome sob outras contas não são afiliados.
|
|
10
|
+
|
|
9
11
|
[](LICENSE)
|
|
10
12
|
[](https://github.com/topics/dsh-plugin)
|
|
11
13
|
[](#)
|
|
@@ -67,6 +69,7 @@ Pronto para uso, o patch enviado revisa com IA `bash` e `write`; todas as outras
|
|
|
67
69
|
|
|
68
70
|
- **Canal git** (último `main`): `dsh plugin --profile web add "github:PerryLink/dsh-auto-review#main"` — o build isolado do `prepare` precisa da única chave `allowBuilds: { esbuild: true }` que o CLI do `dsh` imprime para o `dsh-auto-review`.
|
|
69
71
|
- **Canal npm** (versões publicadas): `dsh plugin --profile web add dsh-auto-review`.
|
|
72
|
+
- **Canal 1024 store**: `npm i -g dsh1024` uma vez, depois `dsh1024 plugin --profile web add dsh-auto-review` (conta para o ranking de instalações do [deepseek1024.com](https://deepseek1024.com)).
|
|
70
73
|
- **Canal tarball**: `pnpm pack` neste repo e depois `dsh plugin --profile web add ./dsh-auto-review-<version>.tgz`.
|
|
71
74
|
- **Desinstalar**: `dsh plugin --profile web remove dsh-auto-review` (ou remova a linha do patch de perfil).
|
|
72
75
|
|
|
@@ -354,25 +357,42 @@ Layout do repositório: `src/index.ts` (contrato do plugin) · `src/config.ts` (
|
|
|
354
357
|
|
|
355
358
|
## Família de Plugins DSH PerryLink
|
|
356
359
|
|
|
357
|
-
Este projeto é um dos plugins
|
|
360
|
+
Este projeto é um dos [33 plugins de DeepSeek Harness](https://github.com/PerryLink) mantidos por [PerryLink](https://github.com/PerryLink). Se este ajuda você, os outros provavelmente também:
|
|
358
361
|
|
|
359
|
-
| Plugin |
|
|
362
|
+
| Plugin | One-liner |
|
|
360
363
|
|---|---|
|
|
361
|
-
| [dsh-
|
|
362
|
-
| [dsh-
|
|
363
|
-
| [dsh-
|
|
364
|
-
| [dsh-
|
|
365
|
-
| [dsh-
|
|
366
|
-
| [dsh-
|
|
367
|
-
| [dsh-
|
|
368
|
-
| **[dsh-
|
|
369
|
-
| [dsh-
|
|
370
|
-
| [dsh-
|
|
371
|
-
| [dsh-
|
|
372
|
-
| [dsh-
|
|
373
|
-
| [dsh-github](https://github.com/PerryLink/dsh-github) | Integração de PR/issues do GitHub para o DSH, cada escrita controlada por aprovação |
|
|
374
|
-
| [dsh-
|
|
375
|
-
| [dsh-
|
|
364
|
+
| **[dsh-dsh-background-agents](https://github.com/PerryLink/dsh-dsh-background-agents)** | Agentes filhos em segundo plano duráveis com barra lateral de UI web, mensagens e interrupção | |
|
|
365
|
+
| **[dsh-dsh-budget](https://github.com/PerryLink/dsh-dsh-budget)** | Governança de custos para DeepSeek Harness: orçamentos, carbono e latência em um painel. | |
|
|
366
|
+
| **[dsh-dsh-checkpoint-rewind](https://github.com/PerryLink/dsh-dsh-checkpoint-rewind)** | Equivalente ao /rewind do Claude Code: instantâneos, bifurcações de sessão, restauração de uso único | |
|
|
367
|
+
| **[dsh-dsh-claude-move](https://github.com/PerryLink/dsh-dsh-claude-move)** | Migre sessões, memória, habilidades e CLAUDE.md do Claude Code para o DSH | |
|
|
368
|
+
| **[dsh-dsh-click](https://github.com/PerryLink/dsh-dsh-click)** | Controle de desktop nativo multiplataforma para DeepSeek Harness — Windows primeiro. | |
|
|
369
|
+
| **[dsh-dsh-composer-history](https://github.com/PerryLink/dsh-dsh-composer-history)** | Histórico de entrada estilo terminal para o compositor web: setas, busca Ctrl+R | |
|
|
370
|
+
| **[dsh-dsh-data-quality](https://github.com/PerryLink/dsh-dsh-data-quality)** | Verificações de qualidade de datasets e verificação de citações (a ponte numérica opcional consumida aqui) | |
|
|
371
|
+
| **[dsh-dsh-defend](https://github.com/PerryLink/dsh-dsh-defend)** | Defesa contra injeção de prompt, jailbreak e vazamento de segredos para DeepSeek Harness. | |
|
|
372
|
+
| **[dsh-dsh-doublecheck](https://github.com/PerryLink/dsh-dsh-doublecheck)** | Guardião de disciplina de engenharia: sabatina de requisitos, portões de teste, revisão adversária | |
|
|
373
|
+
| **[dsh-dsh-draw](https://github.com/PerryLink/dsh-dsh-draw)** | Roteamento unificado de geração de imagens estáticas para DeepSeek Harness. | |
|
|
374
|
+
| **[dsh-dsh-fast](https://github.com/PerryLink/dsh-dsh-fast)** | Diagnóstico de desempenho só de leitura para DeepSeek Harness. | |
|
|
375
|
+
| **[dsh-dsh-fund-research](https://github.com/PerryLink/dsh-dsh-fund-research)** | Relatórios de pesquisa deterministas para fundos mútuos públicos chineses | |
|
|
376
|
+
| **[dsh-dsh-github](https://github.com/PerryLink/dsh-dsh-github)** | Integração de PR/issues do GitHub para o DSH, cada escrita controlada por aprovação | |
|
|
377
|
+
| **[dsh-dsh-industry-research](https://github.com/PerryLink/dsh-dsh-industry-research)** | Orquestração de pesquisa setorial que sela as suas entregas através do `ctx.researchReport.assemble` deste plugin | |
|
|
378
|
+
| **[dsh-dsh-library](https://github.com/PerryLink/dsh-dsh-library)** | Base de conhecimento documental local para DeepSeek Harness. | |
|
|
379
|
+
| **[dsh-dsh-local-ai](https://github.com/PerryLink/dsh-dsh-local-ai)** | Integração de modelos locais (Ollama) para DeepSeek Harness. | |
|
|
380
|
+
| **[dsh-dsh-lsp-actions](https://github.com/PerryLink/dsh-dsh-lsp-actions)** | Diagnósticos, formatação, autocompletar, ações de código e renomeação LSP sobre servidores de linguagem | |
|
|
381
|
+
| **[dsh-dsh-mask](https://github.com/PerryLink/dsh-dsh-mask)** | Middleware de mascaramento de PII: anonimiza no limite do modelo, restaura na camada de exibição | |
|
|
382
|
+
| **[dsh-dsh-mcp-panel](https://github.com/PerryLink/dsh-dsh-mcp-panel)** | Painel de tempo de execução MCP somente leitura: comando /mcp + aba Settings com status, ferramentas e erros | |
|
|
383
|
+
| **[dsh-dsh-memento](https://github.com/PerryLink/dsh-dsh-memento)** | Memória entre sessões controlada por aprovação: costura ctx.memory + SQLite + ferramenta de memória | |
|
|
384
|
+
| **[dsh-dsh-observe](https://github.com/PerryLink/dsh-dsh-observe)** | Exportador de observabilidade OpenTelemetry e Langfuse para DeepSeek Harness. | |
|
|
385
|
+
| **[dsh-dsh-output-styles](https://github.com/PerryLink/dsh-dsh-output-styles)** | Troca de estilo em tempo de execução equivalente ao outputStyles do Claude Code | |
|
|
386
|
+
| **[dsh-dsh-permission-rules](https://github.com/PerryLink/dsh-dsh-permission-rules)** | Regras de permissão declarativas allow/deny/ask estilo Claude Code com auditoria | |
|
|
387
|
+
| **[dsh-dsh-plugin-guide](https://github.com/PerryLink/dsh-dsh-plugin-guide)** | Base de conhecimento de desenvolvimento de plugins como habilidade de agente sob demanda | |
|
|
388
|
+
| **[dsh-dsh-research-report](https://github.com/PerryLink/dsh-dsh-research-report)** | Motor de relatórios de pesquisa verificáveis com evidência endereçada por conteúdo | |
|
|
389
|
+
| **[dsh-dsh-score](https://github.com/PerryLink/dsh-dsh-score)** | Pontuação de qualidade multidimensional para plugins de DeepSeek Harness. | |
|
|
390
|
+
| **[dsh-dsh-session-pin](https://github.com/PerryLink/dsh-dsh-session-pin)** | Fixe sessões na barra lateral web com ordenação durável | |
|
|
391
|
+
| **[dsh-dsh-session-sync](https://github.com/PerryLink/dsh-dsh-session-sync)** | Sincronização de sessões entre dispositivos para DeepSeek Harness — um espelho git dedicado do seu armazenamento de sessões. | |
|
|
392
|
+
| **[dsh-dsh-skill-pack-security](https://github.com/PerryLink/dsh-dsh-skill-pack-security)** | Pacote de habilidades de auditoria de segurança: varredura de segredos, revisão de dependências e cadeia de suprimentos | |
|
|
393
|
+
| **[dsh-dsh-talk](https://github.com/PerryLink/dsh-dsh-talk)** | Loop de sessão com voz para DeepSeek Harness: fale e ouça a resposta. | |
|
|
394
|
+
| **[dsh-dsh-test-drive](https://github.com/PerryLink/dsh-dsh-test-drive)** | Test drives isolados de instalação e smoke para plugins de DeepSeek Harness. | |
|
|
395
|
+
| **[dsh-dsh-translate](https://github.com/PerryLink/dsh-dsh-translate)** | Tradução de parâmetros entre fornecedores e reparo determinístico de JSON para DeepSeek Harness. | |
|
|
376
396
|
|
|
377
397
|
## Licença
|
|
378
398
|
|
package/README.zh.md
CHANGED
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
*当某个动作越过沙箱边界时,第二模型读取证据并给出带有理由的裁决 —— 人类无需批准任何事,同时也没有任何不安全的东西蒙混过关。*
|
|
8
8
|
|
|
9
|
+
> **官方仓库。** 本仓库是 dsh-auto-review 的唯一官方仓库,由 PerryLink 维护。其他账号下的同名仓库与本项目无关。
|
|
10
|
+
|
|
9
11
|
[](LICENSE)
|
|
10
12
|
[](https://github.com/topics/dsh-plugin)
|
|
11
13
|
[](#)
|
|
@@ -67,6 +69,7 @@ dsh --profile web --dump-config | grep -A4 'id: auto-review'
|
|
|
67
69
|
|
|
68
70
|
- **git 渠道**(最新 `main`):`dsh plugin --profile web add "github:PerryLink/dsh-auto-review#main"` —— 隔离的 `prepare` 构建需要 `dsh` CLI 为 `dsh-auto-review` 打印出的那个 `allowBuilds: { esbuild: true }` 键。
|
|
69
71
|
- **npm 渠道**(已发布版本):`dsh plugin --profile web add dsh-auto-review`。
|
|
72
|
+
- **1024 商店渠道**:先 `npm i -g dsh1024`,再 `dsh1024 plugin --profile web add dsh-auto-review`(计入 [deepseek1024.com](https://deepseek1024.com) 安装排行)。
|
|
70
73
|
- **tarball 渠道**:在本仓库执行 `pnpm pack`,然后 `dsh plugin --profile web add ./dsh-auto-review-<version>.tgz`。
|
|
71
74
|
- **卸载**:`dsh plugin --profile web remove dsh-auto-review`(或从 profile 补丁中删除该行)。
|
|
72
75
|
|
|
@@ -354,25 +357,42 @@ pnpm pack # 发布产物
|
|
|
354
357
|
|
|
355
358
|
## PerryLink DSH 插件家族
|
|
356
359
|
|
|
357
|
-
|
|
360
|
+
这是 [PerryLink](https://github.com/PerryLink) 维护的 [33 个 DeepSeek Harness 插件](https://github.com/PerryLink) 之一。如果它能帮到你,其他的也会:
|
|
358
361
|
|
|
359
|
-
|
|
|
362
|
+
| Plugin | One-liner |
|
|
360
363
|
|---|---|
|
|
361
|
-
| [dsh-
|
|
362
|
-
| [dsh-
|
|
363
|
-
| [dsh-
|
|
364
|
-
| [dsh-
|
|
365
|
-
| [dsh-
|
|
366
|
-
| [dsh-
|
|
367
|
-
| [dsh-
|
|
368
|
-
| **[dsh-
|
|
369
|
-
| [dsh-
|
|
370
|
-
| [dsh-
|
|
371
|
-
| [dsh-
|
|
372
|
-
| [dsh-
|
|
373
|
-
| [dsh-github](https://github.com/PerryLink/dsh-github) | 面向 DSH 的 GitHub PR/issues 集成,每次写入经审批门控 |
|
|
374
|
-
| [dsh-
|
|
375
|
-
| [dsh-
|
|
364
|
+
| **[dsh-dsh-background-agents](https://github.com/PerryLink/dsh-dsh-background-agents)** | 带 Web UI 侧栏、消息与中断的持久后台子代理 | |
|
|
365
|
+
| **[dsh-dsh-budget](https://github.com/PerryLink/dsh-dsh-budget)** | DeepSeek Harness 的成本治理:预算、碳排与延迟一屏呈现。 | |
|
|
366
|
+
| **[dsh-dsh-checkpoint-rewind](https://github.com/PerryLink/dsh-dsh-checkpoint-rewind)** | Claude Code /rewind 等价:快照、会话 fork、一次性恢复 | |
|
|
367
|
+
| **[dsh-dsh-claude-move](https://github.com/PerryLink/dsh-dsh-claude-move)** | 把 Claude Code 会话、记忆、技能与 CLAUDE.md 迁入 DSH | |
|
|
368
|
+
| **[dsh-dsh-click](https://github.com/PerryLink/dsh-dsh-click)** | 跨平台原生桌面控制(DeepSeek Harness),Windows 优先。 | |
|
|
369
|
+
| **[dsh-dsh-composer-history](https://github.com/PerryLink/dsh-dsh-composer-history)** | Web 输入框的终端式历史:方向键、Ctrl+R 搜索 | |
|
|
370
|
+
| **[dsh-dsh-data-quality](https://github.com/PerryLink/dsh-dsh-data-quality)** | 数据集质量检查与引文核查(本插件可选消费的数字核查桥) | |
|
|
371
|
+
| **[dsh-dsh-defend](https://github.com/PerryLink/dsh-dsh-defend)** | DeepSeek Harness 的提示注入、越狱与密钥泄露防护。 | |
|
|
372
|
+
| **[dsh-dsh-doublecheck](https://github.com/PerryLink/dsh-dsh-doublecheck)** | 工程纪律守卫:需求质询、测试门禁、对手评审 | |
|
|
373
|
+
| **[dsh-dsh-draw](https://github.com/PerryLink/dsh-dsh-draw)** | DeepSeek Harness 的统一静态图像生成路由。 | |
|
|
374
|
+
| **[dsh-dsh-fast](https://github.com/PerryLink/dsh-dsh-fast)** | DeepSeek Harness 只读性能诊断。 | |
|
|
375
|
+
| **[dsh-dsh-fund-research](https://github.com/PerryLink/dsh-dsh-fund-research)** | 面向中国公募基金的确定性研究报告 | |
|
|
376
|
+
| **[dsh-dsh-github](https://github.com/PerryLink/dsh-dsh-github)** | 面向 DSH 的 GitHub PR/issues 集成,每次写入经审批门控 | |
|
|
377
|
+
| **[dsh-dsh-industry-research](https://github.com/PerryLink/dsh-dsh-industry-research)** | 行业研究编排,经本插件的 `ctx.researchReport.assemble` 封存交付物 | |
|
|
378
|
+
| **[dsh-dsh-library](https://github.com/PerryLink/dsh-dsh-library)** | DeepSeek Harness 的本地文档知识库。 | |
|
|
379
|
+
| **[dsh-dsh-local-ai](https://github.com/PerryLink/dsh-dsh-local-ai)** | DeepSeek Harness 的本地模型(Ollama)接入。 | |
|
|
380
|
+
| **[dsh-dsh-lsp-actions](https://github.com/PerryLink/dsh-dsh-lsp-actions)** | 通过语言服务器的 LSP 诊断、格式化、补全、代码操作与重命名 | |
|
|
381
|
+
| **[dsh-dsh-mask](https://github.com/PerryLink/dsh-dsh-mask)** | PII 脱敏中间件:模型边界匿名化、展示层还原 | |
|
|
382
|
+
| **[dsh-dsh-mcp-panel](https://github.com/PerryLink/dsh-dsh-mcp-panel)** | 只读 MCP 运行时面板:/mcp 命令 + 带状态、工具与错误的 Settings 标签页 | |
|
|
383
|
+
| **[dsh-dsh-memento](https://github.com/PerryLink/dsh-dsh-memento)** | 审批门控的跨会话记忆:ctx.memory 接缝 + SQLite + 记忆工具 | |
|
|
384
|
+
| **[dsh-dsh-observe](https://github.com/PerryLink/dsh-dsh-observe)** | DeepSeek Harness 的 OpenTelemetry 与 Langfuse 可观测导出器。 | |
|
|
385
|
+
| **[dsh-dsh-output-styles](https://github.com/PerryLink/dsh-dsh-output-styles)** | Claude Code outputStyles 等价的运行时风格切换 | |
|
|
386
|
+
| **[dsh-dsh-permission-rules](https://github.com/PerryLink/dsh-dsh-permission-rules)** | Claude Code 风格声明式 allow/deny/ask 权限规则,带审计 | |
|
|
387
|
+
| **[dsh-dsh-plugin-guide](https://github.com/PerryLink/dsh-dsh-plugin-guide)** | 作为按需代理技能的插件开发知识库 | |
|
|
388
|
+
| **[dsh-dsh-research-report](https://github.com/PerryLink/dsh-dsh-research-report)** | 可验证研究报告引擎:内容寻址证据账本与封存版本 | |
|
|
389
|
+
| **[dsh-dsh-score](https://github.com/PerryLink/dsh-dsh-score)** | DeepSeek Harness 插件的多维质量评分。 | |
|
|
390
|
+
| **[dsh-dsh-session-pin](https://github.com/PerryLink/dsh-dsh-session-pin)** | 在 Web 侧栏置顶会话,带持久排序 | |
|
|
391
|
+
| **[dsh-dsh-session-sync](https://github.com/PerryLink/dsh-dsh-session-sync)** | DeepSeek Harness 的跨设备会话同步——会话存储的专用 git 镜像。 | |
|
|
392
|
+
| **[dsh-dsh-skill-pack-security](https://github.com/PerryLink/dsh-dsh-skill-pack-security)** | 安全审计技能包:密钥扫描、依赖与供应链审查 | |
|
|
393
|
+
| **[dsh-dsh-talk](https://github.com/PerryLink/dsh-dsh-talk)** | DeepSeek Harness 的语音优先会话闭环:对它说,听它答。 | |
|
|
394
|
+
| **[dsh-dsh-test-drive](https://github.com/PerryLink/dsh-dsh-test-drive)** | DeepSeek Harness 插件的隔离试装冒烟。 | |
|
|
395
|
+
| **[dsh-dsh-translate](https://github.com/PerryLink/dsh-dsh-translate)** | DeepSeek Harness 的厂商参数翻译与确定性 JSON 修复。 | |
|
|
376
396
|
|
|
377
397
|
## 许可证
|
|
378
398
|
|
package/lib/index.js
CHANGED
|
@@ -33,25 +33,32 @@ function isMarkedAuditEvent(result) {
|
|
|
33
33
|
return typeof result === "object" && result !== null && result.ignorable === true;
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
|
-
* Whether a `@deepseek-ai/dsh-session` version line
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
36
|
+
* Whether a `@deepseek-ai/dsh-session` version line lacks a safe audit
|
|
37
|
+
* write path: every released rc line through `0.1.1-rc.2` silently drops
|
|
38
|
+
* the marker from `Session.append` options (the stamping fix exists on
|
|
39
|
+
* harness master only — no release carries it), and host master
|
|
40
|
+
* (`0.1.2-alpha.1`+, 42dc2a46c2) removed the ignorable envelope entirely
|
|
41
|
+
* and fail-closes on unknown event types (`autoReview/*` is not in
|
|
42
|
+
* `KNOWN_SESSION_EVENT_TYPES`), so writing there makes sessions
|
|
43
|
+
* unresumable. Extend the bound when a new rc line ships that still drops
|
|
44
|
+
* the marker. Non-matching (later rc, stable 0.2+, or unresolvable)
|
|
43
45
|
* versions are treated as possibly-marker-aware and verified by the append
|
|
44
46
|
* probe.
|
|
45
47
|
* @param version - the installed peer version string.
|
|
46
|
-
* @returns true for the known-unmarked `0.1.0-rc.1–rc.8`
|
|
47
|
-
* `0.1.
|
|
48
|
+
* @returns true for the known-unmarked `0.1.0-rc.1–rc.8`, `0.1.1-rc.1–rc.2`,
|
|
49
|
+
* and `0.1.2-alpha.1`+ fail-closed lines.
|
|
48
50
|
*/
|
|
49
51
|
function isUnmarkedHostVersion(version) {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
const v = version.trim();
|
|
53
|
+
const rc = /^0\.1\.(\d+)-rc\.(\d+)$/.exec(v);
|
|
54
|
+
if (rc !== null) {
|
|
55
|
+
const minor = Number(rc[1]);
|
|
56
|
+
const patch = Number(rc[2]);
|
|
57
|
+
return minor === 0 && patch <= 8 || minor === 1 && patch <= 2;
|
|
58
|
+
}
|
|
59
|
+
const line = /^0\.1\.(\d+)(?:-.*)?$/.exec(v);
|
|
60
|
+
if (line !== null) return Number(line[1]) >= 2;
|
|
61
|
+
return false;
|
|
55
62
|
}
|
|
56
63
|
/**
|
|
57
64
|
* The installed `@deepseek-ai/dsh-session` version, or `null` when
|
|
@@ -5198,7 +5205,10 @@ var AutoReviewRuntime = class AutoReviewRuntime {
|
|
|
5198
5205
|
* Whether the session-log audit may append now: enabled when the host
|
|
5199
5206
|
* stamps the `ignorable` marker (peer-version pre-check, then the append
|
|
5200
5207
|
* probe) or when `allowUnmarkedAudit` opts back in. Degrades to the
|
|
5201
|
-
* in-memory mirror otherwise, with a one-time warning.
|
|
5208
|
+
* in-memory mirror otherwise, with a one-time warning. Decides BEFORE the
|
|
5209
|
+
* first append: an unresolvable version also fails closed (host
|
|
5210
|
+
* `0.1.2-alpha.1`+ rejects unknown event types on read, so a probe append
|
|
5211
|
+
* would pollute the log).
|
|
5202
5212
|
* @returns true when audit appends are safe on this host.
|
|
5203
5213
|
*/
|
|
5204
5214
|
auditMayAppend() {
|
|
@@ -5206,7 +5216,7 @@ var AutoReviewRuntime = class AutoReviewRuntime {
|
|
|
5206
5216
|
if (this.auditSupport === "unsupported") return false;
|
|
5207
5217
|
if (this.auditSupport === "unknown") {
|
|
5208
5218
|
const version = peerSessionVersion();
|
|
5209
|
-
if (version
|
|
5219
|
+
if (version === null || isUnmarkedHostVersion(version)) {
|
|
5210
5220
|
this.auditSupport = "unsupported";
|
|
5211
5221
|
this.warnUnmarkedAuditHost();
|
|
5212
5222
|
return false;
|
|
@@ -5227,7 +5237,7 @@ var AutoReviewRuntime = class AutoReviewRuntime {
|
|
|
5227
5237
|
warnUnmarkedAuditHost() {
|
|
5228
5238
|
if (this.warnedUnmarked) return;
|
|
5229
5239
|
this.warnedUnmarked = true;
|
|
5230
|
-
this.ctx.logger.warn("auto-review: this host drops the ignorable marker on audit events (Session.append predates
|
|
5240
|
+
this.ctx.logger.warn("auto-review: this host drops the ignorable marker on audit events or rejects unknown event types on read (Session.append predates the marker / fail-closed event vocabulary), which would make sessions unresumable — session-log audit is disabled and an in-memory mirror takes over; set allowUnmarkedAudit: true to opt back in, and repair already-polluted logs with scripts/repair-session-logs.mjs from dsh-permission-rules");
|
|
5231
5241
|
}
|
|
5232
5242
|
/** The seq of the open turn/start, or undefined between turns (first-party events exist on every host). */
|
|
5233
5243
|
openTurnSeq(session) {
|
package/lib/types/audit.d.ts
CHANGED
|
@@ -26,18 +26,20 @@ export type AuditSupport = 'unknown' | 'supported' | 'unsupported';
|
|
|
26
26
|
*/
|
|
27
27
|
export declare function isMarkedAuditEvent(result: unknown): boolean;
|
|
28
28
|
/**
|
|
29
|
-
* Whether a `@deepseek-ai/dsh-session` version line
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
29
|
+
* Whether a `@deepseek-ai/dsh-session` version line lacks a safe audit
|
|
30
|
+
* write path: every released rc line through `0.1.1-rc.2` silently drops
|
|
31
|
+
* the marker from `Session.append` options (the stamping fix exists on
|
|
32
|
+
* harness master only — no release carries it), and host master
|
|
33
|
+
* (`0.1.2-alpha.1`+, 42dc2a46c2) removed the ignorable envelope entirely
|
|
34
|
+
* and fail-closes on unknown event types (`autoReview/*` is not in
|
|
35
|
+
* `KNOWN_SESSION_EVENT_TYPES`), so writing there makes sessions
|
|
36
|
+
* unresumable. Extend the bound when a new rc line ships that still drops
|
|
37
|
+
* the marker. Non-matching (later rc, stable 0.2+, or unresolvable)
|
|
36
38
|
* versions are treated as possibly-marker-aware and verified by the append
|
|
37
39
|
* probe.
|
|
38
40
|
* @param version - the installed peer version string.
|
|
39
|
-
* @returns true for the known-unmarked `0.1.0-rc.1–rc.8`
|
|
40
|
-
* `0.1.
|
|
41
|
+
* @returns true for the known-unmarked `0.1.0-rc.1–rc.8`, `0.1.1-rc.1–rc.2`,
|
|
42
|
+
* and `0.1.2-alpha.1`+ fail-closed lines.
|
|
41
43
|
*/
|
|
42
44
|
export declare function isUnmarkedHostVersion(version: string): boolean;
|
|
43
45
|
/**
|
package/lib/types/audit.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/audit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,sGAAsG;AACtG,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,CAAA;AAElE;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAE3D;AAED
|
|
1
|
+
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/audit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,sGAAsG;AACtG,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,CAAA;AAElE;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAE3D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAW9D;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAOlD"}
|
package/lib/types/audit.js
CHANGED
|
@@ -27,26 +27,33 @@ export function isMarkedAuditEvent(result) {
|
|
|
27
27
|
return typeof result === 'object' && result !== null && result.ignorable === true;
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
|
-
* Whether a `@deepseek-ai/dsh-session` version line
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
30
|
+
* Whether a `@deepseek-ai/dsh-session` version line lacks a safe audit
|
|
31
|
+
* write path: every released rc line through `0.1.1-rc.2` silently drops
|
|
32
|
+
* the marker from `Session.append` options (the stamping fix exists on
|
|
33
|
+
* harness master only — no release carries it), and host master
|
|
34
|
+
* (`0.1.2-alpha.1`+, 42dc2a46c2) removed the ignorable envelope entirely
|
|
35
|
+
* and fail-closes on unknown event types (`autoReview/*` is not in
|
|
36
|
+
* `KNOWN_SESSION_EVENT_TYPES`), so writing there makes sessions
|
|
37
|
+
* unresumable. Extend the bound when a new rc line ships that still drops
|
|
38
|
+
* the marker. Non-matching (later rc, stable 0.2+, or unresolvable)
|
|
37
39
|
* versions are treated as possibly-marker-aware and verified by the append
|
|
38
40
|
* probe.
|
|
39
41
|
* @param version - the installed peer version string.
|
|
40
|
-
* @returns true for the known-unmarked `0.1.0-rc.1–rc.8`
|
|
41
|
-
* `0.1.
|
|
42
|
+
* @returns true for the known-unmarked `0.1.0-rc.1–rc.8`, `0.1.1-rc.1–rc.2`,
|
|
43
|
+
* and `0.1.2-alpha.1`+ fail-closed lines.
|
|
42
44
|
*/
|
|
43
45
|
export function isUnmarkedHostVersion(version) {
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
const v = version.trim();
|
|
47
|
+
const rc = /^0\.1\.(\d+)-rc\.(\d+)$/.exec(v);
|
|
48
|
+
if (rc !== null) {
|
|
49
|
+
const minor = Number(rc[1]);
|
|
50
|
+
const patch = Number(rc[2]);
|
|
51
|
+
return (minor === 0 && patch <= 8) || (minor === 1 && patch <= 2);
|
|
52
|
+
}
|
|
53
|
+
const line = /^0\.1\.(\d+)(?:-.*)?$/.exec(v);
|
|
54
|
+
if (line !== null)
|
|
55
|
+
return Number(line[1]) >= 2;
|
|
56
|
+
return false;
|
|
50
57
|
}
|
|
51
58
|
/**
|
|
52
59
|
* The installed `@deepseek-ai/dsh-session` version, or `null` when
|
package/lib/types/audit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/audit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAK3C;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAe;IAChD,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAK,MAAkC,CAAC,SAAS,KAAK,IAAI,CAAA;AAChH,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/audit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAK3C;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAe;IAChD,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAK,MAAkC,CAAC,SAAS,KAAK,IAAI,CAAA;AAChH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IACxB,MAAM,EAAE,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC5C,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3B,OAAO,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAA;IACnE,CAAC;IACD,MAAM,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC5C,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAC9C,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAChC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,uCAAuC,CAA0B,CAAA;QAC5G,OAAO,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;IAC7D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC"}
|
package/lib/types/runtime.d.ts
CHANGED
|
@@ -41,7 +41,10 @@ export declare class AutoReviewRuntime {
|
|
|
41
41
|
* Whether the session-log audit may append now: enabled when the host
|
|
42
42
|
* stamps the `ignorable` marker (peer-version pre-check, then the append
|
|
43
43
|
* probe) or when `allowUnmarkedAudit` opts back in. Degrades to the
|
|
44
|
-
* in-memory mirror otherwise, with a one-time warning.
|
|
44
|
+
* in-memory mirror otherwise, with a one-time warning. Decides BEFORE the
|
|
45
|
+
* first append: an unresolvable version also fails closed (host
|
|
46
|
+
* `0.1.2-alpha.1`+ rejects unknown event types on read, so a probe append
|
|
47
|
+
* would pollute the log).
|
|
45
48
|
* @returns true when audit appends are safe on this host.
|
|
46
49
|
*/
|
|
47
50
|
private auditMayAppend;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAEjF,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAqB,MAAM,gCAAgC,CAAA;AAGzG,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAIlG,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAoB,MAAM,aAAa,CAAA;AAkC3E,eAAO,MAAM,IAAI,gBAAgB,CAAA;AACjC,eAAO,MAAM,MAAM,UAAiD,CAAA;AAgHpE;;;;GAIG;AACH,qBAAa,iBAAiB;IAuB1B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,QAAQ,CAAC,MAAM,EAAE,cAAc;IAvBjC,mFAAmF;IACnF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;IAExD,4FAA4F;IAC5F,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmC;IAE5D,uIAAuI;IACvI,OAAO,CAAC,YAAY,CAA0B;IAE9C,yFAAyF;IACzF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwC;IAE/D,mFAAmF;IACnF,OAAO,CAAC,cAAc,CAAQ;IAE9B,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA2C;IAEzE,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IAEpC,YACmB,GAAG,EAAE,OAAO,EACpB,MAAM,EAAE,cAAc,EAGhC;IAID
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/lib/types/runtime.js
CHANGED
|
@@ -84,7 +84,10 @@ export class AutoReviewRuntime {
|
|
|
84
84
|
* Whether the session-log audit may append now: enabled when the host
|
|
85
85
|
* stamps the `ignorable` marker (peer-version pre-check, then the append
|
|
86
86
|
* probe) or when `allowUnmarkedAudit` opts back in. Degrades to the
|
|
87
|
-
* in-memory mirror otherwise, with a one-time warning.
|
|
87
|
+
* in-memory mirror otherwise, with a one-time warning. Decides BEFORE the
|
|
88
|
+
* first append: an unresolvable version also fails closed (host
|
|
89
|
+
* `0.1.2-alpha.1`+ rejects unknown event types on read, so a probe append
|
|
90
|
+
* would pollute the log).
|
|
88
91
|
* @returns true when audit appends are safe on this host.
|
|
89
92
|
*/
|
|
90
93
|
auditMayAppend() {
|
|
@@ -94,13 +97,13 @@ export class AutoReviewRuntime {
|
|
|
94
97
|
return false;
|
|
95
98
|
if (this.auditSupport === 'unknown') {
|
|
96
99
|
const version = peerSessionVersion();
|
|
97
|
-
if (version
|
|
100
|
+
if (version === null || isUnmarkedHostVersion(version)) {
|
|
98
101
|
this.auditSupport = 'unsupported';
|
|
99
102
|
this.warnUnmarkedAuditHost();
|
|
100
103
|
return false;
|
|
101
104
|
}
|
|
102
105
|
}
|
|
103
|
-
return true; //
|
|
106
|
+
return true; // a recognized marker-aware future line: append once and probe the envelope
|
|
104
107
|
}
|
|
105
108
|
/** After the first append on an unversioned host, probe the returned envelope for the ignorable marker. */
|
|
106
109
|
probeAuditResult(result) {
|
|
@@ -119,7 +122,7 @@ export class AutoReviewRuntime {
|
|
|
119
122
|
if (this.warnedUnmarked)
|
|
120
123
|
return;
|
|
121
124
|
this.warnedUnmarked = true;
|
|
122
|
-
this.ctx.logger.warn('auto-review: this host drops the ignorable marker on audit events (Session.append predates
|
|
125
|
+
this.ctx.logger.warn('auto-review: this host drops the ignorable marker on audit events or rejects unknown event types on read (Session.append predates the marker / fail-closed event vocabulary), which would make sessions unresumable — session-log audit is disabled and an in-memory mirror takes over; set allowUnmarkedAudit: true to opt back in, and repair already-polluted logs with scripts/repair-session-logs.mjs from dsh-permission-rules');
|
|
123
126
|
}
|
|
124
127
|
// --- In-memory audit mirror (hosts without the ignorable marker) ----------
|
|
125
128
|
/** The seq of the open turn/start, or undefined between turns (first-party events exist on every host). */
|
package/lib/types/runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-auto-review",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "Second-model AI auto-review for DeepSeek Harness approval requests: a read-only reviewer subagent decides allow/deny on the approval answerer chain, with fail-closed fallback and full session-log audit.",
|
|
5
5
|
"private": false,
|
|
6
6
|
"author": {
|
|
@@ -141,6 +141,11 @@
|
|
|
141
141
|
"@deepseek-ai/cordis": "^4.0.1",
|
|
142
142
|
"@deepseek-ai/dsh-agent": ">=0.1.1-rc.2 <0.2.0",
|
|
143
143
|
"@deepseek-ai/dsh-brand": ">=0.1.1-rc.2 <0.2.0",
|
|
144
|
+
"@deepseek-ai/dsh-client-connection": ">=0.1.1-rc.2 <0.2.0",
|
|
145
|
+
"@deepseek-ai/dsh-client-locale": ">=0.1.1-rc.2 <0.2.0",
|
|
146
|
+
"@deepseek-ai/dsh-client-runtime": ">=0.1.1-rc.2 <0.2.0",
|
|
147
|
+
"@deepseek-ai/dsh-client-ui-conversation": ">=0.1.1-rc.2 <0.2.0",
|
|
148
|
+
"@deepseek-ai/dsh-client-ui-slots": ">=0.1.1-rc.2 <0.2.0",
|
|
144
149
|
"@deepseek-ai/dsh-commands": ">=0.1.1-rc.2 <0.2.0",
|
|
145
150
|
"@deepseek-ai/dsh-invariants": ">=0.1.1-rc.2 <0.2.0",
|
|
146
151
|
"@deepseek-ai/dsh-llm": ">=0.1.1-rc.2 <0.2.0",
|
|
@@ -151,6 +156,23 @@
|
|
|
151
156
|
"@deepseek-ai/dsh-user-approval": ">=0.1.1-rc.2 <0.2.0",
|
|
152
157
|
"@deepseek-ai/schemastery": "^3.18.0"
|
|
153
158
|
},
|
|
159
|
+
"peerDependenciesMeta": {
|
|
160
|
+
"@deepseek-ai/dsh-client-connection": {
|
|
161
|
+
"optional": true
|
|
162
|
+
},
|
|
163
|
+
"@deepseek-ai/dsh-client-locale": {
|
|
164
|
+
"optional": true
|
|
165
|
+
},
|
|
166
|
+
"@deepseek-ai/dsh-client-runtime": {
|
|
167
|
+
"optional": true
|
|
168
|
+
},
|
|
169
|
+
"@deepseek-ai/dsh-client-ui-conversation": {
|
|
170
|
+
"optional": true
|
|
171
|
+
},
|
|
172
|
+
"@deepseek-ai/dsh-client-ui-slots": {
|
|
173
|
+
"optional": true
|
|
174
|
+
}
|
|
175
|
+
},
|
|
154
176
|
"dependencies": {
|
|
155
177
|
"@deepseek-ai/dsh-agent-spine-demo": "0.1.1-rc.2",
|
|
156
178
|
"@deepseek-ai/dsh-app-boot": "0.1.1-rc.2",
|
|
@@ -204,6 +226,10 @@
|
|
|
204
226
|
"vitest": "^4.1.10"
|
|
205
227
|
},
|
|
206
228
|
"license": "Apache-2.0",
|
|
229
|
+
"funding": {
|
|
230
|
+
"type": "individual",
|
|
231
|
+
"url": "https://github.com/sponsors/PerryLink"
|
|
232
|
+
},
|
|
207
233
|
"scripts": {
|
|
208
234
|
"build": "node scripts/prepare.mjs",
|
|
209
235
|
"typecheck": "tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json --noEmit",
|
package/src/audit.ts
CHANGED
|
@@ -33,25 +33,32 @@ export function isMarkedAuditEvent(result: unknown): boolean {
|
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
|
-
* Whether a `@deepseek-ai/dsh-session` version line
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
36
|
+
* Whether a `@deepseek-ai/dsh-session` version line lacks a safe audit
|
|
37
|
+
* write path: every released rc line through `0.1.1-rc.2` silently drops
|
|
38
|
+
* the marker from `Session.append` options (the stamping fix exists on
|
|
39
|
+
* harness master only — no release carries it), and host master
|
|
40
|
+
* (`0.1.2-alpha.1`+, 42dc2a46c2) removed the ignorable envelope entirely
|
|
41
|
+
* and fail-closes on unknown event types (`autoReview/*` is not in
|
|
42
|
+
* `KNOWN_SESSION_EVENT_TYPES`), so writing there makes sessions
|
|
43
|
+
* unresumable. Extend the bound when a new rc line ships that still drops
|
|
44
|
+
* the marker. Non-matching (later rc, stable 0.2+, or unresolvable)
|
|
43
45
|
* versions are treated as possibly-marker-aware and verified by the append
|
|
44
46
|
* probe.
|
|
45
47
|
* @param version - the installed peer version string.
|
|
46
|
-
* @returns true for the known-unmarked `0.1.0-rc.1–rc.8`
|
|
47
|
-
* `0.1.
|
|
48
|
+
* @returns true for the known-unmarked `0.1.0-rc.1–rc.8`, `0.1.1-rc.1–rc.2`,
|
|
49
|
+
* and `0.1.2-alpha.1`+ fail-closed lines.
|
|
48
50
|
*/
|
|
49
51
|
export function isUnmarkedHostVersion(version: string): boolean {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
const v = version.trim()
|
|
53
|
+
const rc = /^0\.1\.(\d+)-rc\.(\d+)$/.exec(v)
|
|
54
|
+
if (rc !== null) {
|
|
55
|
+
const minor = Number(rc[1])
|
|
56
|
+
const patch = Number(rc[2])
|
|
57
|
+
return (minor === 0 && patch <= 8) || (minor === 1 && patch <= 2)
|
|
58
|
+
}
|
|
59
|
+
const line = /^0\.1\.(\d+)(?:-.*)?$/.exec(v)
|
|
60
|
+
if (line !== null) return Number(line[1]) >= 2
|
|
61
|
+
return false
|
|
55
62
|
}
|
|
56
63
|
|
|
57
64
|
/**
|
package/src/runtime.ts
CHANGED
|
@@ -207,7 +207,10 @@ export class AutoReviewRuntime {
|
|
|
207
207
|
* Whether the session-log audit may append now: enabled when the host
|
|
208
208
|
* stamps the `ignorable` marker (peer-version pre-check, then the append
|
|
209
209
|
* probe) or when `allowUnmarkedAudit` opts back in. Degrades to the
|
|
210
|
-
* in-memory mirror otherwise, with a one-time warning.
|
|
210
|
+
* in-memory mirror otherwise, with a one-time warning. Decides BEFORE the
|
|
211
|
+
* first append: an unresolvable version also fails closed (host
|
|
212
|
+
* `0.1.2-alpha.1`+ rejects unknown event types on read, so a probe append
|
|
213
|
+
* would pollute the log).
|
|
211
214
|
* @returns true when audit appends are safe on this host.
|
|
212
215
|
*/
|
|
213
216
|
private auditMayAppend(): boolean {
|
|
@@ -215,13 +218,13 @@ export class AutoReviewRuntime {
|
|
|
215
218
|
if (this.auditSupport === 'unsupported') return false
|
|
216
219
|
if (this.auditSupport === 'unknown') {
|
|
217
220
|
const version = peerSessionVersion()
|
|
218
|
-
if (version
|
|
221
|
+
if (version === null || isUnmarkedHostVersion(version)) {
|
|
219
222
|
this.auditSupport = 'unsupported'
|
|
220
223
|
this.warnUnmarkedAuditHost()
|
|
221
224
|
return false
|
|
222
225
|
}
|
|
223
226
|
}
|
|
224
|
-
return true //
|
|
227
|
+
return true // a recognized marker-aware future line: append once and probe the envelope
|
|
225
228
|
}
|
|
226
229
|
|
|
227
230
|
/** After the first append on an unversioned host, probe the returned envelope for the ignorable marker. */
|
|
@@ -240,7 +243,7 @@ export class AutoReviewRuntime {
|
|
|
240
243
|
if (this.warnedUnmarked) return
|
|
241
244
|
this.warnedUnmarked = true
|
|
242
245
|
this.ctx.logger.warn(
|
|
243
|
-
'auto-review: this host drops the ignorable marker on audit events (Session.append predates
|
|
246
|
+
'auto-review: this host drops the ignorable marker on audit events or rejects unknown event types on read (Session.append predates the marker / fail-closed event vocabulary), which would make sessions unresumable — session-log audit is disabled and an in-memory mirror takes over; set allowUnmarkedAudit: true to opt back in, and repair already-polluted logs with scripts/repair-session-logs.mjs from dsh-permission-rules',
|
|
244
247
|
)
|
|
245
248
|
}
|
|
246
249
|
|