Skip to content

Commit 98287c5

Browse files
authored
Merge pull request #20: docs v0.9.5
Release v0.9.5 documentation, Spanish translations, and British English standardisation
2 parents 730cb15 + 764d1fc commit 98287c5

143 files changed

Lines changed: 3036 additions & 1867 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,5 +149,6 @@ pnpm-lock.yaml
149149
.docmd/
150150
.docmd-search/
151151
_docmd-search/
152+
.threads/
152153
.vscode/
153154
local-tars/

docmd-assistant/de/configuration.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ interface AssistantOptions {
2323
maxTokens?: number;
2424
reasoning?: boolean | 'none' | 'low' | 'medium' | 'high';
2525
headers?: Record<string, string>;
26+
contextWindow?: number;
2627
}
2728
```
2829

@@ -44,6 +45,7 @@ interface AssistantOptions {
4445
| `maxTokens` | `number` | Maximale Token pro Antwort | Anbieter-Standard |
4546
| `reasoning` | `boolean \| string` | Umschalten des erweiterten Reasoning-Modus (`false`, `'low'`, `'medium'`, `'high'`) | `false` |
4647
| `headers` | `Record<string, string>` | Benutzerdefinierte HTTP-Header für Relay-Anfragen | `{}` |
48+
| `contextWindow` | `number` | Maximale Zeichenanzahl des an das Modell übergebenen Dokumentationskontexts pro Turn. `0` = unbegrenzt (vollständiger Inhalt für höchste Wiedergabetreue). | `0` (unbegrenzt) |
4749

4850
::: callout tip "Standard-System-Prompt"
4951
Wenn kein `systemPrompt` angegeben ist, wendet die Engine einen Standard-Prompt an, der Regeln für die Assistentenidentität, bevorzugte Werkzeugaufrufe und klickbare Zitationslinks durchsetzt.

docmd-assistant/de/navigation.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,14 @@
3434
"icon": "scroll",
3535
"collapsible": false,
3636
"children": [
37+
{
38+
"title": "v0.1.17",
39+
"path": "/release-notes/0-1-17"
40+
},
41+
{
42+
"title": "v0.1.16",
43+
"path": "/release-notes/0-1-16"
44+
},
3745
{
3846
"title": "v0.1.15",
3947
"path": "/release-notes/0-1-15"
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
---
2+
title: "Versionshinweise v0.1.16"
3+
description: "Versionshinweise für docmd-assistant v0.1.16 mit strukturierter Markdown-DOM-Extraktion, unbegrenztem Kontextfenster, Multi-Turn-Deduplizierung für Cloud-Analysen und Bereinigung von Anführungszeichen."
4+
---
5+
6+
`docmd-assistant` v0.1.16 führt eine strukturierte Markdown-DOM-Extraktion für das Lesen von Dokumentationsseiten, eine unbegrenzte Kontextfenster-Übergabe für hochwertige Antworten, Deduplizierung von Multi-Turn-Abfragen in Cloud-Analysen und eine verfeinerte Abfragebereinigung ein.
7+
8+
## Hauptfunktionen & Verbesserungen
9+
10+
### Strukturierte Markdown-Inhaltsextraktion
11+
12+
- **Erhaltung von Codeblöcken & Formatierung**: Der integrierte DOM-Seitenleser (`read_documentation_page`) wandelt HTML-Dokumente nun in sauberes, strukturiertes Markdown anstelle von flachem Text um. Codeblöcke mit Sprachbezeichnungen (`pre/code`), Überschriften (`#``######`), Aufzählungen (`-`) und Absatzabstände bleiben vollständig erhalten.
13+
- **Entfernung von Chrome- und Navigations-Elementen**: Nicht relevante Elemente (`nav`, `aside`, `header`, `footer`, `.toc`, `.sidebar`, `.docmd-ai-drawer` und `[aria-hidden="true"]`) werden vor der Extraktion gefiltert, sodass nur echter Dokumentationstext und Code an das LLM übergeben werden.
14+
15+
### Unbegrenzte Kontextfenster-Übergabe (`contextWindow`)
16+
17+
- **Hochwertige Dokumentensynthese**: Die bisherige Begrenzung auf 3.500 Zeichen in `read_documentation_page` wurde entfernt, sodass vollständige Referenzseiten, Konfigurationstabellen und Codebeispiele eingelesen werden können.
18+
- **Konfigurierbare Kontextgröße**: Neue Option `contextWindow` in `AssistantOptions` (Standardwert: `0` / unbegrenzt mit vollständiger Übergabe), die statische Zeichengrenzen ablöst und bei Bedarf Token-Optimierung ermöglicht.
19+
20+
### Optimierung von Multi-Turn-Relay & Analysen
21+
22+
- **Kennzeichnung von Tool-Aufrufen (`isToolFollowUp`)**: Folgeaufrufe innerhalb autonomer Multi-Turn-Schleifen übermitteln nun `isToolFollowUp: true`. Dadurch können Cloud-Relays und Analysedienste initiale Besucheranfragen von internen Tool-Zwischenschritten unterscheiden und doppelte Metrikeinträge vermeiden.
23+
- **Bereinigung von Abfragen**: Entfernt angehängte Suchkontext-Blöcke (`\n\n[Documentation Search Context...]`) aus `originalUserQuery` und eliminiert umschließende Anführungszeichen, wodurch verwaiste Anführungszeichen in Chat-Protokollen vermieden werden.
24+
25+
## Behobene Probleme
26+
27+
- **Doppelte Analyseprotokollierung**: Ein Problem wurde behoben, bei dem interne Tool-Ausführungsschritte (z. B. Suchen und anschließendes Seitenlesen) als wiederholte Benutzerabfragen erfasst wurden.
28+
- **Führendes Anführungszeichen-Artefakt (`"`)**: Behebt ein Problem bei der Bereinigung, durch das ein verwaistes Anführungszeichen vor Besucherfragen in Cloud-Protokollen verblieb.
29+
- **Codeblock-Verflachung**: Behebt den Verlust von Einrückungen und Zeilenumbrüchen beim Abrufen von Dokumentationsseiten über `read_documentation_page`.
30+
31+
## Upgrade
32+
33+
::: tabs
34+
== tab "npm" icon:package
35+
```bash
36+
npm install docmd-assistant@0.1.16
37+
```
38+
== tab "pnpm" icon:zap
39+
```bash
40+
pnpm add docmd-assistant@0.1.16
41+
```
42+
:::
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
---
2+
title: "Versionshinweise v0.1.17"
3+
description: "Versionshinweise für docmd-assistant v0.1.17 mit universellem seitenunabhängigem System-Prompt, Versions- und Projekt-gefilterter Suche, Token-Ökonomie-DOM-Inhaltsbegrenzung und Netzwerkfehlertoleranz."
4+
---
5+
6+
`docmd-assistant` v0.1.17 macht die Assistant-Engine vollständig universell und seitenunabhängig, führt gezielte Versions- und Teilprojekt-Suchfilter ein, integriert eine Token-sparende Inhaltsbegrenzung für umfangreiche Dokumentationsseiten, stärkt die Grenzen des Kontextfensters und verbessert die Netzwerkfehlertoleranz.
7+
8+
## Hauptfunktionen & Verbesserungen
9+
10+
### Universeller & seitenunabhängiger System-Prompt
11+
12+
- **Authentische Wissensfindung**: Ersetzt fest codierte Konfigurationsannahmen durch einen universellen, seitenunabhängigen Prompt. Anstatt vorgegebene Konfigurationsschemata vorauszusetzen, ermittelt und begründet der Assistent seine Antworten dynamisch über die verfügbaren Tools (`search_documentation`, `read_documentation_page`). Dies gewährleistet ein natürliches Zusammenspiel mit jeder Dokumentationsseite, jedem Entwickler-Blog oder technischen Leitfaden.
13+
- **Konsistente Identität**: Bewahrt die Kernidentität des „docmd assistant“ als professioneller KI-Guide, der Fragen präzise anhand des dokumentierten Inhalts beantwortet.
14+
15+
### Versions- & Projekt-gefilterte Dokumentationssuche
16+
17+
- **Gezielte Versionsfilterung**: Die Parameterstruktur von `search_documentation` wurde um optionale Filter für `version` (z. B. `"0.9.0"`, `"0.8.0"`, `"latest"`) und `project` erweitert, sodass Dokumentationen mit mehreren Versionen oder Teilprojekten gezielt durchsucht werden können.
18+
- **Weitergabe an benutzerdefinierte Suchfunktionen**: An `createStandardTools` übergebene benutzerdefinierte Such-Handler erhalten nun die Argumente `(query, project, version)` zur feingliedrigen Indexabfrage.
19+
20+
### Intelligente Inhaltsbegrenzung & Kontextfenster-Absicherung
21+
22+
- **DOM-Leser Token-Ökonomie**: In `read_documentation_page` wurde eine Obergrenze von 8.000 Zeichen mit einem klaren Fortsetzungshinweis (`...[content capped for token economy]`) eingeführt. Dies schützt das Token-Budget vor übergroßen API-Spezifikationen, während relevanter Erklärungstext und Codebeispiele erhalten bleiben.
23+
- **Kontextfenster-Mindestgrenze**: Eine Mindestgrenze von 1.000 Zeichen für die Option `contextWindow` verhindert, dass fehlerhafte oder zu kleine Werte versehentlich den abgerufenen Dokumentationskontext leeren.
24+
25+
### Fehlertolerante Netzwerkverarbeitung
26+
27+
- **Verständliche Netzwerk-Fehlermeldungen**: Fängt Browser-Verbindungsfehler auf niedriger Ebene (`Failed to fetch`, `Load failed`) sowohl im Streaming- als auch im Standardmodus ab und liefert klare, handlungsorientierte Diagnosen.
28+
- **Saubere Abbruchbehandlung**: Verarbeitet abgebrochene Anfragen und `AbortError` sauber, ohne Protokolle mit unnötigen Fehlern zu überfluten.
29+
30+
## Behobene Probleme
31+
32+
- **Universeller Abruf**: Behebt ein Problem, bei dem starre Konfigurationsvorgaben im Standard-Prompt dazu führten, dass der Assistent von `docmd.config.json`-Strukturen ausging, anstatt die tatsächliche Konfiguration der jeweiligen Seite abzurufen.
33+
- **Präzision bei Versionsanfragen**: Behebt ein Problem, durch das versionierte Abfragen (z. B. nach historischen Release Notes) den Suchbereich nicht gezielt auf eine bestimmte Version einschränken konnten.
34+
35+
## Upgrade
36+
37+
::: tabs
38+
== tab "npm" icon:package
39+
```bash
40+
npm install docmd-assistant@0.1.17
41+
```
42+
== tab "pnpm" icon:zap
43+
```bash
44+
pnpm add docmd-assistant@0.1.17
45+
```
46+
:::

docmd-assistant/de/tools.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,5 +119,6 @@ Wenn kein benutzerdefinierter Callback angegeben ist, greift `search_documentati
119119
Wenn Suchergebnis-Snippets nicht ausreichen, ruft der Assistent automatisch `read_documentation_page({ path })` auf:
120120

121121
1. **Benutzerdefinierter Reader-Callback (`customReader`)**: Falls vorhanden, delegiert die Engine das Abrufen der Seite an Ihren benutzerdefinierten Loader.
122-
2. **DOM-Parser-Fallback**: Falls kein Callback vorhanden ist, lädt das Werkzeug `window.location.origin + path` via `fetch()` und extrahiert Text aus `<main>`, `<article>` oder `[role="main"]` via `DOMParser()`.
123-
3. **Zitations-Links**: Der zurückgegebene Seiteninhalt wird in den Kontext integriert, sodass das Modell klickbare Markdown-Links `[Seitentitel](path)` in seiner Antwort generieren kann.
122+
2. **Strukturierter DOM-Parser-Fallback**: Falls kein benutzerdefinierter Callback angegeben ist, lädt das Werkzeug `window.location.origin + path` via `fetch()` und wandelt den `<main>`, `<article>` oder `[role="main"]` Container in strukturiertes Markdown um. Codeblöcke mit Sprachauszeichnung (`pre/code`), Überschriften (`#`) und Listen (`-`) bleiben erhalten, während Chrome- und Navigationselemente (`nav`, `aside`, `.toc`, `.sidebar`, `.docmd-ai-drawer`) gefiltert werden.
123+
3. **Unbegrenzte Kontextübergabe**: Seiten werden vollständig ohne Zeichenbegrenzung übergeben, sodass umfangreiche Konfigurationstabellen und Codebeispiele das Modell intakt erreichen.
124+
4. **Zitations-Links**: Der zurückgegebene Seiteninhalt wird in den Kontext integriert, sodass das Modell klickbare Markdown-Links `[Seitentitel](path)` in seiner Antwort generieren kann.

docmd-assistant/en/configuration.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ interface AssistantOptions {
2323
maxTokens?: number;
2424
reasoning?: boolean | 'none' | 'low' | 'medium' | 'high';
2525
headers?: Record<string, string>;
26+
contextWindow?: number;
2627
}
2728
```
2829

@@ -44,6 +45,7 @@ interface AssistantOptions {
4445
| `maxTokens` | `number` | Maximum tokens returned per response turn | Provider default |
4546
| `reasoning` | `boolean \| string` | Toggle extended reasoning mode (`false`, `'low'`, `'medium'`, `'high'`) | `false` |
4647
| `headers` | `Record<string, string>` | Custom HTTP headers sent with relay requests | `{}` |
48+
| `contextWindow` | `number` | Maximum characters of retrieved documentation context passed to the model per turn. `0` = uncapped (full content delivered for highest response fidelity). | `0` (uncapped) |
4749

4850
::: callout tip "Default System Prompt"
4951
If no `systemPrompt` is provided, the engine applies a default prompt that enforces docmd assistant identity rules, search-first tool calling, concise Markdown output, and clickable citation links.

docmd-assistant/en/navigation.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,14 @@
3434
"icon": "scroll",
3535
"collapsible": false,
3636
"children": [
37+
{
38+
"title": "v0.1.17",
39+
"path": "/release-notes/0-1-17"
40+
},
41+
{
42+
"title": "v0.1.16",
43+
"path": "/release-notes/0-1-16"
44+
},
3745
{
3846
"title": "v0.1.15",
3947
"path": "/release-notes/0-1-15"

docmd-assistant/en/release-notes/0-1-10.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
---
22
title: "Release Notes v0.1.10"
3-
description: "Release notes for docmd-assistant v0.1.10 featuring autonomous tool loops with live streaming, tool argument normalization, concurrency locking, and status badges."
3+
description: "Release notes for docmd-assistant v0.1.10 featuring autonomous tool loops with live streaming, tool argument normalisation, concurrency locking, and status badges."
44
---
55

6-
`docmd-assistant` v0.1.10 introduces multi-turn autonomous tool execution loops with real-time streaming capabilities, robust tool argument normalization, and concurrency locks to prevent state race conditions.
6+
`docmd-assistant` v0.1.10 introduces multi-turn autonomous tool execution loops with real-time streaming capabilities, robust tool argument normalisation, and concurrency locks to prevent state race conditions.
77

88
## Key Features & Enhancements
99

@@ -12,9 +12,9 @@ description: "Release notes for docmd-assistant v0.1.10 featuring autonomous too
1212
- **Multi-Turn Tool Execution**: Implemented multi-turn execution loops across both direct `aiplug` and custom relay modes, allowing the engine to run registered tools (e.g. documentation search) and feed results back to the LLM automatically.
1313
- **Real-Time Stream Support**: Enabled `sendMessageStream` and streaming relay adapters to support tool-driven responses with real-time status callbacks.
1414

15-
### Robust Tool Argument Normalization
15+
### Robust Tool Argument Normalisation
1616

17-
- **Flexible Parsing**: Standardized parsing of tool arguments to handle varied model outputs—supporting raw JSON strings, nested `arguments`/`input` objects, and direct parameter key-value pairs seamlessly.
17+
- **Flexible Parsing**: Standardised parsing of tool arguments to handle varied model outputs—supporting raw JSON strings, nested `arguments`/`input` objects, and direct parameter key-value pairs seamlessly.
1818
- **Resilient Error Handling**: Wrapped tool execution in safety boundaries to return structured error messages back to the model without crashing the conversation loop.
1919

2020
### Concurrency Protection & UI Status Events

docmd-assistant/en/release-notes/0-1-11.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
---
22
title: "Release Notes v0.1.11"
3-
description: "Release notes for docmd-assistant v0.1.11 featuring multi-turn autonomous tool loop stabilization, query context preservation, non-SSE HTTP stream fallback, and keyword search optimizations."
3+
description: "Release notes for docmd-assistant v0.1.11 featuring multi-turn autonomous tool loop stabilisation, query context preservation, non-SSE HTTP stream fallback, and keyword search optimisations."
44
---
55

66
`docmd-assistant` v0.1.11 brings critical stability and reliability enhancements to the multi-turn autonomous tool execution loop, context-grounded response synthesis, non-streaming JSON fallback parsing, and keyword-first search decomposing.
77

88
## Key Features & Enhancements
99

10-
### Multi-Turn Autonomous Tool Loop Stabilization
10+
### Multi-Turn Autonomous Tool Loop Stabilisation
1111

1212
The relay streaming and standard HTTP execution loops (`runRelayStreamLoop` and `runRelayLoop`) have been re-architected for deterministic multi-turn tool execution:
1313

@@ -24,9 +24,9 @@ Eliminated intermittent "No response returned" errors when interacting with serv
2424

2525
### Keyword-First Search Query Decomposition
2626

27-
- Refined system prompt guidance and tool calling instructions to decompose natural language queries into targeted, high-precision search keywords (e.g., `"install"`, `"config"`, `"cli"`) to maximize match accuracy on static site documentation indexes.
27+
- Refined system prompt guidance and tool calling instructions to decompose natural language queries into targeted, high-precision search keywords (e.g., `"install"`, `"config"`, `"cli"`) to maximise match accuracy on static site documentation indexes.
2828

29-
### Enhanced Output Sanitizer Recovery
29+
### Enhanced Output Sanitiser Recovery
3030

3131
- Hardened `cleanAssistantReply` and `parseAssistantOutput` to gracefully recover text if the model generates reasoning blocks (`<think>`) without separate markdown content, preventing empty bubbles from reaching the chat UI.
3232

0 commit comments

Comments
 (0)