iobroker.autodoc 0.9.35
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/LICENSE +21 -0
- package/README.md +126 -0
- package/admin/autodoc.png +0 -0
- package/admin/i18n/de.json +244 -0
- package/admin/i18n/en.json +241 -0
- package/admin/i18n/es.json +229 -0
- package/admin/i18n/fr.json +235 -0
- package/admin/i18n/it.json +229 -0
- package/admin/i18n/nl.json +229 -0
- package/admin/i18n/pl.json +229 -0
- package/admin/i18n/pt.json +229 -0
- package/admin/i18n/ru.json +229 -0
- package/admin/i18n/uk.json +229 -0
- package/admin/i18n/zh-cn.json +229 -0
- package/admin/jsonConfig.json +1490 -0
- package/io-package.json +253 -0
- package/lib/adapter-config.d.ts +19 -0
- package/lib/aiEnhancer.js +2114 -0
- package/lib/autoHostTopologyMermaid.js +195 -0
- package/lib/dependencyAnalyzer.js +83 -0
- package/lib/diagnosisSnapshot.js +32 -0
- package/lib/discovery.js +953 -0
- package/lib/docTemplateConfig.js +422 -0
- package/lib/documentModel.js +640 -0
- package/lib/forumCard.js +70 -0
- package/lib/guestHelpContent.js +93 -0
- package/lib/guestScriptPrivacy.js +14 -0
- package/lib/hostDisplay.js +19 -0
- package/lib/htmlRenderer.js +4108 -0
- package/lib/htmlThemePresets.js +79 -0
- package/lib/htmlToPdf.js +99 -0
- package/lib/i18n.js +1309 -0
- package/lib/markdownRenderer.js +2025 -0
- package/lib/mermaidAutodocPalette.js +165 -0
- package/lib/mermaidServerSvg.js +252 -0
- package/lib/notifier.js +124 -0
- package/lib/quickStartGuide.js +180 -0
- package/lib/roleMapper.js +90 -0
- package/lib/scriptGroups.js +78 -0
- package/lib/versionTracker.js +312 -0
- package/main.js +1368 -0
- package/package.json +88 -0
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
{
|
|
2
|
+
"autodoc adapter settings": "Налаштування адаптера для autodoc",
|
|
3
|
+
"Project name": "Project name",
|
|
4
|
+
"Name of the ioBroker project or installation": "Name of the ioBroker project or installation",
|
|
5
|
+
"Target system": "Target system",
|
|
6
|
+
"Usually ioBroker": "Usually ioBroker",
|
|
7
|
+
"Documentation profile": "Documentation profile",
|
|
8
|
+
"Target audience for the generated documentation": "Target audience for the generated documentation",
|
|
9
|
+
"Documentation language": "Documentation language",
|
|
10
|
+
"Language for the generated documentation": "Language for the generated documentation",
|
|
11
|
+
"English": "English",
|
|
12
|
+
"German": "German",
|
|
13
|
+
"Target audience for Markdown export and default focus. HTML always includes all three profiles (admin, user, onboarding). AI text for User/Onboarding HTML runs whenever a KI provider is set, regardless of this selection.": "Target audience for Markdown export and default focus. HTML always includes all three profiles (admin, user, onboarding). AI text for User/Onboarding HTML runs whenever a KI provider is set, regardless of this selection.",
|
|
14
|
+
"Project description": "Project description",
|
|
15
|
+
"Short description of what should be documented": "Short description of what should be documented",
|
|
16
|
+
"Additional notes": "Additional notes",
|
|
17
|
+
"Optional notes, devices, adapters or special requirements": "Optional notes, devices, adapters or special requirements",
|
|
18
|
+
"Generate documentation on adapter start": "Generate documentation on adapter start",
|
|
19
|
+
"If enabled, documentation is queued each time the adapter starts (runs in the background; the instance can show green before it finishes). If disabled, a run still happens once after an update when the built-in HTML renderer version no longer matches info.templateVersion. Check the log for \"Documentation generated via startup\" and state info.lastTrigger.": "If enabled, documentation is queued each time the adapter starts (runs in the background; the instance can show green before it finishes). If disabled, a run still happens once after an update when the built-in HTML renderer version no longer matches info.templateVersion. Check the log for \"Documentation generated via startup\" and state info.lastTrigger.",
|
|
20
|
+
"Generate documentation on adapter changes": "Generate documentation on adapter changes",
|
|
21
|
+
"If enabled, documentation is regenerated automatically when adapters are installed, removed, or enabled/disabled (30 second debounce)": "If enabled, documentation is regenerated automatically when adapters are installed, removed, or enabled/disabled (30 second debounce)",
|
|
22
|
+
"Read live state values (opt-in)": "Read live state values (opt-in)",
|
|
23
|
+
"If enabled, current values for selected state roles are read and shown in User/Onboarding room cards and the Admin device table (badges next to device names). Includes e.g. temperature, blinds (level.blind), dimmers, lights (switch.light), outlets (switch/plug), humidity, power metrics, locks, door/window/contact, motion, alarm. Room members may be channels or devices — matching child states are found automatically. Very custom or empty roles are skipped.": "If enabled, current values for selected state roles are read and shown in User/Onboarding room cards and the Admin device table (badges next to device names). Includes e.g. temperature, blinds (level.blind), dimmers, lights (switch.light), outlets (switch/plug), humidity, power metrics, locks, door/window/contact, motion, alarm. Room members may be channels or devices — matching child states are found automatically. Very custom or empty roles are skipped.",
|
|
24
|
+
"Scheduled interval (hours)": "Scheduled interval (hours)",
|
|
25
|
+
"Optional timer: regenerate every X hours, independent of start and adapter-change options above. 0 = no scheduled runs (events and start still work).": "Optional timer: regenerate every X hours, independent of start and adapter-change options above. 0 = no scheduled runs (events and start still work).",
|
|
26
|
+
"Only document enabled instances": "Only document enabled instances",
|
|
27
|
+
"If enabled, only active adapter instances are included in the documentation": "If enabled, only active adapter instances are included in the documentation",
|
|
28
|
+
"Hide instance details in markdown": "Hide instance details in markdown",
|
|
29
|
+
"If enabled, the markdown output contains only summary information without the full instance list": "If enabled, the markdown output contains only summary information without the full instance list",
|
|
30
|
+
"Maximum documented instances": "Maximum documented instances",
|
|
31
|
+
"Limits how many adapter instances are included in the generated documentation, 0 means unlimited": "Limits how many adapter instances are included in the generated documentation, 0 means unlimited",
|
|
32
|
+
"ioBroker base URL (optional)": "ioBroker base URL (optional)",
|
|
33
|
+
"Used for the info.htmlUrl state. Include port, e.g. 192.168.1.100:8081 or http://myserver:8082. Protocol is optional. Leave empty for auto-detection (may fail in Docker).": "Used for the info.htmlUrl state. Include port, e.g. 192.168.1.100:8081 or http://myserver:8082. Protocol is optional. Leave empty for auto-detection (may fail in Docker).",
|
|
34
|
+
"Maximum stored documentation files": "Maximum stored documentation files",
|
|
35
|
+
"How many timestamped file sets to keep (per type: .md, .html, .json). Oldest are deleted automatically. 0 = use default (3).": "How many timestamped file sets to keep (per type: .md, .html, .json). Oldest are deleted automatically. 0 = use default (3).",
|
|
36
|
+
"Documentation states storage": "Documentation states storage",
|
|
37
|
+
"Documentation states storage help": "Full: duplicate markdown, HTML, and JSON in adapter states (legacy, larger object DB / Redis). Metadata only: keep full exports only under Files (autodoc-latest.*); states hold a short placeholder — reduces database size. Scripts that read documentation.* for full text must use /files/ or HTTP URLs instead. Download actions still write autodoc.md / .json / .html from the latest files. In both modes **`documentation.exportHashes`** stores **SHA-256 (hex)** digests of the latest MD / Admin HTML / JSON exports for change detection. **After a successful PDF export** (optional `puppeteer`), the same state also includes **`autodoc-admin.pdf`**, **`autodoc-user.pdf`**, and **`autodoc-onboarding.pdf`** digests when those files are written.",
|
|
38
|
+
"Doc states mode full": "Full (in states — larger DB)",
|
|
39
|
+
"Doc states mode metadata": "Metadata only (content in /files only)",
|
|
40
|
+
"Manual context (JSON)": "Manual context (JSON)",
|
|
41
|
+
"Additional manual information to include in documentation (description, contact, notes)": "Additional manual information to include in documentation (description, contact, notes)",
|
|
42
|
+
"Basic settings": "Basic settings",
|
|
43
|
+
"Documentation & layout": "Documentation & layout",
|
|
44
|
+
"Admin tab orientation AI": "Optional: connect an AI provider to add short explanations in exports. Leave the provider on Disabled unless you want this. Local Ollama keeps data on your network; cloud providers send metadata and text to external servers — see the privacy note below.",
|
|
45
|
+
"Admin tab orientation basic": "You are on Basic settings: language, when documentation regenerates, optional live values in room cards, Generate now / last run / forum card. The tabs My documentation, Advanced, and HTML export & extra sections hold readable content and filters. Notifications and AI documentation at the end are optional.",
|
|
46
|
+
"Admin tab orientation documentation": "This tab holds reader-facing texts. Tab Advanced is for filters, Markdown detail limits, ioBroker base URL for links/QR codes, documentation storage mode, optional file copy, and the documentation setup score. Tab HTML export & extra sections controls colors/theme, chapter visibility and order, and custom Markdown. AI-only context hints for prompts (never in exports) live on AI documentation once a provider is enabled.",
|
|
47
|
+
"Admin tab orientation notify": "Optional: send a message (e.g. Telegram, email) after each documentation run. Skip this tab if you do not need alerts.",
|
|
48
|
+
"Basic section profile": "Profile & language",
|
|
49
|
+
"Basic section triggers": "When to regenerate",
|
|
50
|
+
"Basic section discovery": "Live values in the documentation",
|
|
51
|
+
"Basic section manual": "Run now & status",
|
|
52
|
+
"Manual section project": "Project, contact & notes",
|
|
53
|
+
"Doc section appearance": "Look, theme & logo",
|
|
54
|
+
"Doc section expert styling": "Optional: custom font & CSS",
|
|
55
|
+
"Advanced styling open hint": "Optional expert settings: change the font or add CSS on top of the **theme preset** and **color scheme** above. Leave empty to keep the default look. A syntax error in CSS can break the layout. **Chapter visibility and custom Markdown sections** are in the blocks **above** on this tab — not part of this section.",
|
|
56
|
+
"Doc section chapters": "Which chapters to show (per profile)",
|
|
57
|
+
"Notify section": "After each documentation run",
|
|
58
|
+
"AI section provider": "Provider, model & connection",
|
|
59
|
+
"AI section tuning": "Sampling temperature (optional)",
|
|
60
|
+
"AI section scripts": "JavaScript scripts (optional AI pass)",
|
|
61
|
+
"My documentation": "My documentation",
|
|
62
|
+
"Advanced": "Advanced",
|
|
63
|
+
"Advanced section content": "What to include & limits",
|
|
64
|
+
"Advanced section states": "State storage & public URL",
|
|
65
|
+
"Advanced section filesystem": "Optional: extra copy to disk",
|
|
66
|
+
"Advanced setup score intro": "The **documentation setup score** (below) appears in generated Admin documentation. One optional row checks that the **ioBroker base URL** above is not empty — useful for QR codes and bookmark links. Turn individual rows off or change thresholds if they do not fit your installation.",
|
|
67
|
+
"Advanced section maintenance score": "Documentation setup score",
|
|
68
|
+
"Maintenance score include description check": "Include project description length",
|
|
69
|
+
"Maintenance score description check help": "When enabled, the Admin export **documentation setup score** counts this row: “My documentation” — project description must reach at least the minimum length below. Turn off if you deliberately keep a short description.",
|
|
70
|
+
"Maintenance score include base URL check": "Include ioBroker base URL",
|
|
71
|
+
"Maintenance score base URL check help": "When enabled, the setup score requires a non-empty **ioBroker base URL** above (QR codes, bookmark links, troubleshooting bookmarks).",
|
|
72
|
+
"Maintenance score include unassigned check": "Include unassigned instances check",
|
|
73
|
+
"Maintenance score unassigned check help": "When enabled, the setup score fails when the number of enabled adapter instances not assigned to any room is **≥** the threshold below. Many setups skip rooms on purpose — raise the threshold or disable this check.",
|
|
74
|
+
"Maintenance score min description length": "Minimum project description length (characters)",
|
|
75
|
+
"Maintenance score min description length help": "Trimmed character count. Default 40; the adapter clamps to **5–2000**.",
|
|
76
|
+
"Maintenance score unassigned warn at": "Unassigned instances — warn from (count)",
|
|
77
|
+
"Maintenance score unassigned warn at help": "The check fails when the unassigned count is **≥** this value. Default **10**; the adapter clamps to **1–500**. Lower values are stricter.",
|
|
78
|
+
"Admin export scripts hint": "In the generated Admin HTML/Markdown, JavaScript scripts are listed by ioBroker folder (Global first, with a short reminder). This matches the Script Engine tree — not a separate AutoDoc setting.",
|
|
79
|
+
"AI documentation": "AI documentation",
|
|
80
|
+
"Manual documentation hint": "These fields are shown in all documentation profiles. Use “Help & emergencies”, “Routines (your words)”, and “How we run this home (your playbook)” for guests and family in plain language — nothing is invented automatically. Adapter and room notes make the documentation more readable for non-technical users. In the Admin HTML/Markdown export, JavaScript scripts are grouped by ioBroker folder; see the short note under “Global scripts” about execution order and sensible use.",
|
|
81
|
+
"Guest & family (plain language)": "Guest & family (plain language)",
|
|
82
|
+
"Help & emergencies (guests/family)": "Help & emergencies (guests/family)",
|
|
83
|
+
"Who to call, what to try if something fails, where the fuse box is — your words only; nothing is invented automatically.": "Who to call, what to try if something fails, where the fuse box is — your words only; nothing is invented automatically.",
|
|
84
|
+
"Routines & automations (your words)": "Routines & automations (your words)",
|
|
85
|
+
"Describe in everyday language what often runs by itself (lights, heating, blinds). Shown near the script list; complements technical script names.": "Describe in everyday language what often runs by itself (lights, heating, blinds). Shown near the script list; complements technical script names.",
|
|
86
|
+
"Troubleshooting — quick lines (optional)": "Troubleshooting — quick lines (optional)",
|
|
87
|
+
"Troubleshooting quick lines hint": "Short one-liners for guests and family (Wi‑Fi, power, water, other). They appear in the **Help & emergencies** block together with **bookmark links** to this documentation (same URLs as QR codes — requires **Base URL** under Advanced). All optional; nothing is invented automatically.",
|
|
88
|
+
"Quick: Wi-Fi / network": "Quick: Wi-Fi / network",
|
|
89
|
+
"One line, e.g. guest Wi-Fi name or where a repeater is — optional.": "One line, e.g. guest Wi-Fi name or where a repeater is — optional.",
|
|
90
|
+
"Quick: power / fuses": "Quick: power / fuses",
|
|
91
|
+
"One line, e.g. where the electrical panel is — optional.": "One line, e.g. where the electrical panel is — optional.",
|
|
92
|
+
"Quick: water shutoff": "Quick: water shutoff",
|
|
93
|
+
"One line, e.g. where to turn off main water — optional.": "One line, e.g. where to turn off main water — optional.",
|
|
94
|
+
"Quick: other": "Quick: other",
|
|
95
|
+
"One more short line (alarm code location, key box, etc.) — optional.": "One more short line (alarm code location, key box, etc.) — optional.",
|
|
96
|
+
"Contact person": "Contact person",
|
|
97
|
+
"Who manages this system? e.g. 'Max Mustermann, Telegram @max' - shown so guests and family know who to ask": "Who manages this system? e.g. 'Max Mustermann, Telegram @max' - shown so guests and family know who to ask",
|
|
98
|
+
"General notes": "General notes",
|
|
99
|
+
"General notes about this installation (e.g. special setups, known issues)": "General notes about this installation (e.g. special setups, known issues)",
|
|
100
|
+
"Per-adapter notes": "Per-adapter notes",
|
|
101
|
+
"Adapter notes": "Adapter notes",
|
|
102
|
+
"Add a human-readable note for specific adapters (shown in all profiles)": "Add a human-readable note for specific adapters (shown in all profiles)",
|
|
103
|
+
"Adapter (e.g. telegram)": "Adapter (e.g. telegram)",
|
|
104
|
+
"Note": "Note",
|
|
105
|
+
"Per-room notes": "Per-room notes",
|
|
106
|
+
"Room notes": "Room notes",
|
|
107
|
+
"Add a human-readable note for specific rooms (shown in User and Onboarding profiles)": "Add a human-readable note for specific rooms (shown in User and Onboarding profiles)",
|
|
108
|
+
"Room name": "Room name",
|
|
109
|
+
"Generate now hint": "Click the button below to generate the documentation immediately without restarting the adapter. All three profiles (Admin, User, Onboarding) are generated simultaneously.",
|
|
110
|
+
"Generate documentation now": "Generate documentation now",
|
|
111
|
+
"Generate documentation": "Generate documentation",
|
|
112
|
+
"Start documentation generation now? This may take a few seconds.": "Start documentation generation now? This may take a few seconds.",
|
|
113
|
+
"Generate": "Generate",
|
|
114
|
+
"Cancel": "Cancel",
|
|
115
|
+
"Last generated": "Last generated",
|
|
116
|
+
"Forum system card (plaintext)": "Forum system card (plaintext)",
|
|
117
|
+
"AI explain JavaScript scripts (opt-in)": "AI explain JavaScript scripts (opt-in)",
|
|
118
|
+
"Sends sanitized script source to the same AI provider to add short plain-language explanations in User/Onboarding docs. Lines matching common secret patterns are redacted first; still review before enabling on production systems.": "Sends sanitized script source to the same AI provider to add short plain-language explanations in User/Onboarding docs. Lines matching common secret patterns are redacted first; still review before enabling on production systems.",
|
|
119
|
+
"Max characters of script source per KI call": "Max characters of script source per KI call",
|
|
120
|
+
"How many characters of each script (after redaction) are sent to the model; longer sources are truncated. Default 12000. Lower to speed up or fit small context; raise only if your model and timeout allow. Range 2000–100000. State info.aiScriptSourceProgress shows e.g. 5/12 while processing.": "How many characters of each script (after redaction) are sent to the model; longer sources are truncated. Default 12000. Lower to speed up or fit small context; raise only if your model and timeout allow. Range 2000–100000. State info.aiScriptSourceProgress shows e.g. 5/12 while processing.",
|
|
121
|
+
"Cancel script KI hint": "Use this if a long script-AI run must be stopped: set action.cancelScriptSourceAi, use the button, or sendTo command cancelScriptSourceAi. The current KI request may still finish; further scripts are skipped. info.aiScriptSourceProgress shows cancelled when the phase ends.",
|
|
122
|
+
"Cancel script KI (running generation)": "Cancel script KI (running generation)",
|
|
123
|
+
"Cancel script KI": "Cancel script KI",
|
|
124
|
+
"Stop the optional per-script KI pass? The request that is already running may still finish; further scripts will not be started. (The main user/onboarding KI calls run before this phase.)": "Stop the optional per-script KI pass? The request that is already running may still finish; further scripts will not be started. (The main user/onboarding KI calls run before this phase.)",
|
|
125
|
+
"User/Family - hide from family": "User/Family - hide from family",
|
|
126
|
+
"User hide hint": "Rooms and adapters listed here are not shown in the User/Family profile.",
|
|
127
|
+
"Hidden rooms (User/Family)": "Hidden rooms (User/Family)",
|
|
128
|
+
"User hidden rooms help": "Enter the exact room name as it appears in ioBroker",
|
|
129
|
+
"Hidden adapters (User/Family)": "Hidden adapters (User/Family)",
|
|
130
|
+
"User hidden adapters help": "Enter the adapter name without instance number (e.g. backitup)",
|
|
131
|
+
"Onboarding - hide from guests": "Onboarding - hide from guests",
|
|
132
|
+
"Onboarding hide hint": "Rooms and adapters listed here are not shown in the Onboarding profile - useful for technical rooms (server, backup) that guests do not need to see.",
|
|
133
|
+
"Hidden rooms (Onboarding)": "Hidden rooms (Onboarding)",
|
|
134
|
+
"Onboarding hidden rooms help": "Enter the exact room name as it appears in ioBroker (e.g. Server room, Backup)",
|
|
135
|
+
"Room name (exact)": "Room name (exact)",
|
|
136
|
+
"Hidden adapters (Onboarding)": "Hidden adapters (Onboarding)",
|
|
137
|
+
"Onboarding hidden adapters help": "Enter the adapter name without instance number (e.g. backitup, simple-api)",
|
|
138
|
+
"Onboarding guest view — list internal JavaScript file names": "Onboarding guest view — list internal JavaScript file names",
|
|
139
|
+
"onboarding guest script names help": "Off (default): guest Onboarding shows only how many JavaScript automations are active — no internal script file names, and no per-script lines in Quick Start (ioBroker **common.desc** is not a reliable guest-facing “description”). On: legacy — up to five script names in “What runs automatically?” plus a short “more running” line; Quick Start may still list scripts with name + **common.desc** as today. Full detail stays in the Admin profile.",
|
|
140
|
+
"Adapter name (e.g. backitup)": "Adapter name (e.g. backitup)",
|
|
141
|
+
"Manual context (JSON, legacy)": "Manual context (JSON, legacy)",
|
|
142
|
+
"Legacy JSON field. Use the 'My documentation' tab instead. Only needed for migration.": "Legacy JSON field. Use the 'My documentation' tab instead. Only needed for migration.",
|
|
143
|
+
"French": "French",
|
|
144
|
+
"User/Family": "User/Family",
|
|
145
|
+
"Notifications": "Notifications",
|
|
146
|
+
"Send notification after documentation generation": "Send notification after documentation generation",
|
|
147
|
+
"If enabled, a message is sent via the configured adapter after each generation": "If enabled, a message is sent via the configured adapter after each generation",
|
|
148
|
+
"Messaging adapter instance": "Messaging adapter instance",
|
|
149
|
+
"Instance to send the notification through, e.g. telegram.0, pushover.0, email.0": "Instance to send the notification through, e.g. telegram.0, pushover.0, email.0",
|
|
150
|
+
"Recipient (optional)": "Recipient (optional)",
|
|
151
|
+
"Telegram username, Pushover device, or email address — leave empty for adapter default": "Telegram username, Pushover device, or email address — leave empty for adapter default",
|
|
152
|
+
"Custom message template (optional)": "Custom message template (optional)",
|
|
153
|
+
"Use {project}, {summary}, {version}, {trigger} as placeholders. Leave empty for default message.": "Use {project}, {summary}, {version}, {trigger} as placeholders. Leave empty for default message.",
|
|
154
|
+
"AI-Enhanced Documentation": "AI-Enhanced Documentation",
|
|
155
|
+
"AI provider": "AI provider",
|
|
156
|
+
"Select an AI provider for narrative summaries. Disabled for admin profile (all data is already factual). Not used for admin profile.": "Select an AI provider for narrative summaries. Not used for admin profile (all data is already factual).",
|
|
157
|
+
"Disabled": "Disabled",
|
|
158
|
+
"AI privacy warning": "⚠️ Privacy note: Cloud providers (Mistral, Groq, Anthropic) receive adapter names, room names, JavaScript script titles, and optional script purpose text (common.desc) when present. No passwords or IP addresses are sent, but your smart home structure is visible to the provider. Ollama runs locally — nothing leaves your network.",
|
|
159
|
+
"AI hardware hint": "ℹ️ Low-power hosts (e.g. Raspberry Pi) or CPU-only Ollama: small models run faster but summaries may be rougher or less reliable — that is expected. You can disable AI here; Markdown/HTML docs still generate from your real ioBroker data. For better text: run Ollama on a faster PC/NAS and set the Ollama base URL to that host, or use a cloud provider if the privacy trade-off is acceptable.",
|
|
160
|
+
"Ollama — local, private, free (recommended)": "Ollama — local, private, free (recommended)",
|
|
161
|
+
"Mistral AI — EU/GDPR, free tier": "Mistral AI — EU/GDPR, free tier",
|
|
162
|
+
"Groq — US, free tier (data may be used for training)": "Groq — US, free tier (data may be used for training)",
|
|
163
|
+
"Anthropic Claude — paid, no training on data": "Anthropic Claude — paid, no training on data",
|
|
164
|
+
"Ollama recommended: runs locally, no data leaves your network. Cloud providers send adapter/room/script names to external servers.": "Ollama recommended: runs locally, no data leaves your network. Cloud providers send adapter and room identifiers, script titles, and any optional common.desc text to external servers.",
|
|
165
|
+
"AI model (optional)": "AI model (optional)",
|
|
166
|
+
"Leave empty for default. Ollama: llama3.2 / gemma3. Mistral: mistral-small-latest. Groq: llama-3.3-70b-versatile. Anthropic: claude-haiku-4-5-20251001": "Leave empty for default. Ollama: llama3.2 / gemma3. Mistral: mistral-small-latest. Groq: llama-3.3-70b-versatile. Anthropic: claude-haiku-4-5-20251001",
|
|
167
|
+
"API key": "API key",
|
|
168
|
+
"Mistral: console.mistral.ai | Groq: starts with gsk_... | Anthropic: starts with sk-ant-... | Ollama: leave empty": "Mistral: console.mistral.ai | Groq: starts with gsk_... | Anthropic: starts with sk-ant-... | Ollama: leave empty",
|
|
169
|
+
"Ollama base URL": "Ollama base URL",
|
|
170
|
+
"Only for Ollama. Default: http://localhost:11434": "Only for Ollama. Default: http://localhost:11434",
|
|
171
|
+
"AI request timeout seconds (optional)": "AI request timeout seconds (optional)",
|
|
172
|
+
"Maximum wait for one LLM HTTP request. Default 300. Each generation uses several calls (user, onboarding, sometimes a German polish pass). Increase for slow local models on CPU (e.g. 480 or 600 for llama3.1:8b on NAS). Range 30–900.": "Maximum wait for one LLM HTTP request. Default 300. Each generation uses several calls (user, onboarding, sometimes a German polish pass). Increase for slow local models on CPU (e.g. 480 or 600 for llama3.1:8b on NAS). Range 30–900.",
|
|
173
|
+
"AI temperature — user profile (optional)": "AI temperature — user profile (optional)",
|
|
174
|
+
"Sampling temperature for resident-facing AI text. Leave empty for the provider default. Typical range 0–2 (Ollama, Groq, Mistral); Anthropic accepts 0–1 (values above 1 are clamped). Lower ≈ steadier wording; higher ≈ more variation — tune after testing.": "Sampling temperature for resident-facing AI text. Leave empty for the provider default. Typical range 0–2 (Ollama, Groq, Mistral); Anthropic accepts 0–1 (values above 1 are clamped). Lower ≈ steadier wording; higher ≈ more variation — tune after testing.",
|
|
175
|
+
"AI temperature — onboarding (optional)": "AI temperature — onboarding (optional)",
|
|
176
|
+
"Sampling temperature for guest/onboarding AI text. Same rules as user profile. The German Sie polish pass uses a fixed low temperature and ignores this field.": "Sampling temperature for guest/onboarding AI text. Same rules as user profile. The German Sie polish pass uses a fixed low temperature and ignores this field.",
|
|
177
|
+
"Filesystem export path (optional)": "Filesystem export path (optional)",
|
|
178
|
+
"Export path hint": "Optional: additional export to a real filesystem path outside ioBroker's database. Leave empty to disable. Examples: /mnt/nas/autodoc, D:\\Docs\\smarthome. All three profiles (admin/user/onboarding) are written as HTML files. When PDF export is enabled and **puppeteer** is installed in this adapter folder, matching **autodoc-*.pdf** files are mirrored here too. Useful for accessing the documentation when ioBroker is down, or for serving via a web server.",
|
|
179
|
+
"Advanced section pdf export": "PDF export (optional Puppeteer / Chromium)",
|
|
180
|
+
"Pdf export after generation label": "Generate PDF after each documentation run",
|
|
181
|
+
"Pdf export after generation help": "**Optional:** after each successful generation, create **autodoc-admin.pdf**, **autodoc-user.pdf**, **autodoc-onboarding.pdf** via headless Chromium (**npm package `puppeteer`** must be installed in **this adapter directory**, e.g. clone/tarball → `npm install puppeteer` or enable optional dependencies during install). Uses the same sandbox flags as Mermaid CLI (Docker/LXC-friendly). **Embedded Mermaid SVG** (optional @mermaid-js/mermaid-cli) prints offline; **jsDelivr** client Mermaid needs internet during the PDF step. Large documents can take minutes and use noticeable RAM/CPU. You can also trigger PDFs manually with the adapter state **action.exportPdf** (no full regeneration).",
|
|
182
|
+
"multihostDistribution": "Host Distribution",
|
|
183
|
+
"AI context hints": "AI context hints",
|
|
184
|
+
"AI context hints (owner notes)": "AI context hints (owner notes)",
|
|
185
|
+
"AI context hints hint": "Optional bullet-point facts about your home for the AI — used only in the AI prompt, never shown in the documentation. Example: '- Lights in living room auto-off at 22:00', '- Guests can control temperature via voice'. The more specific, the better the AI text quality. — **Guest onboarding:** Prefer everyday wording (e.g. \"we are still setting things up\", \"docs will be expanded\"). If you pack in IT/project jargon (\"adapter\", \"repository\", \"not in the repo\", …), the model may repeat it in guest-facing text. A **safety filter** then replaces the guest AI block with a neutral default so visitors do not read admin-style jargon. That behaviour is intentional; relaxing it would weaken guest-safe output. The **resident / family profile** is not subject to this rule.",
|
|
186
|
+
"AI context hints help": "Short points only the AI sees — not shown in exported documentation. Privacy: sent to the configured AI provider. — **Guest profile:** See the longer hint above: technical wording in context hints can cause the guest AI text to be discarded and replaced with neutral copy.",
|
|
187
|
+
"HTML export & extra sections": "HTML export & extra sections",
|
|
188
|
+
"Doc layout intro": "Tune generated **HTML** (all three profiles): optional forced light/dark mode, a **color preset** (no raw CSS), logo, and your own Markdown chapters. **Font** and **extra CSS** are optional expert settings at the **bottom** of this tab (after chapter visibility and custom sections). Admin **chapter order** and **hide list** apply to Admin HTML and Admin-profile Markdown. **Hide lists** for **User/Family** and **Onboarding** (e.g. `ownerPlaybook`) are **below** on this tab and affect those HTML exports and Markdown when that documentation profile is selected. Markdown also uses your custom sections.",
|
|
189
|
+
"Doc layout pdf hint": "**PDF export:** settings are on the **Advanced** tab (below filesystem export path): optional **PDF after each generation**, or use the **`action.exportPdf`** button state any time. Requires optional **`puppeteer`** in the adapter directory. Writes **`autodoc-{admin,user,onboarding}.pdf`** under adapter **Files** and mirrors them when a filesystem export path is set.",
|
|
190
|
+
"Advanced HTML styling (optional)": "Advanced HTML styling (optional)",
|
|
191
|
+
"Advanced HTML styling hint": "**Expert / optional:** Custom font and CSS change how exported HTML looks. Syntax mistakes or future AutoDoc updates can make the layout look wrong — leave these fields empty if you are unsure.",
|
|
192
|
+
"HTML color scheme": "HTML color scheme",
|
|
193
|
+
"Auto (viewer toggle + saved preference)": "Auto (viewer toggle + saved preference)",
|
|
194
|
+
"Light only": "Light only",
|
|
195
|
+
"Dark only": "Dark only",
|
|
196
|
+
"HTML color scheme help": "**Auto:** visitors can toggle light/dark; preference is stored in the browser. **Light / Dark:** fixed look; the toggle is hidden. Does not affect Markdown files.",
|
|
197
|
+
"HTML theme preset": "HTML color preset",
|
|
198
|
+
"HTML theme preset help": "Adjusts the built-in **CSS variable** palette (background, text, links, table headers, …) for **exported HTML** only. Lighter on writing custom CSS: change the preset first, use **Extra CSS** only for fine-tuning. Works with the **color scheme** above (light and dark each get a matching palette).",
|
|
199
|
+
"HTML theme preset default": "Default",
|
|
200
|
+
"HTML theme preset high contrast": "High contrast",
|
|
201
|
+
"HTML theme preset warm": "Warm",
|
|
202
|
+
"HTML theme preset slate": "Slate",
|
|
203
|
+
"Sidebar logo URL": "Sidebar logo URL",
|
|
204
|
+
"Sidebar logo URL help": "Optional image above the search box in exported HTML. Use **https://…** or a same-site path starting with **/** (e.g. a file under ioBroker `/files/…`). Other schemes are ignored.",
|
|
205
|
+
"Font stack (CSS)": "Font stack (CSS)",
|
|
206
|
+
"Font stack help": "Optional `font-family` value for body text, e.g. `Georgia, serif` or `system-ui, sans-serif`. Characters `< > { }` are stripped for safety.",
|
|
207
|
+
"Extra CSS": "Extra CSS",
|
|
208
|
+
"Extra CSS help": "Appended to the HTML `<style>` block. For branding (accent colours, spacing). You control this CSS — avoid pasting untrusted content. Do not close `</style>` inside this field. Prefer small rules; overly broad selectors can break the page after updates.",
|
|
209
|
+
"Admin HTML — hide chapters": "Admin HTML — hide chapters",
|
|
210
|
+
"Admin chapter order hint": "Optional: reorder **Admin** HTML and **Admin** Markdown. Enter **chapter ids** in the JSON field below (`[]` = built-in order). Ids you omit are appended in the default product order at the end. The **full list of valid English ids** appears **only** in that field’s help (click the `?` tooltip) — it is not repeated here.",
|
|
211
|
+
"Admin chapter order (JSON array)": "Admin chapter order (JSON array)",
|
|
212
|
+
"Admin chapter order JSON help": "JSON array of strings, e.g. `[\"system\",\"adapters\",\"manual\"]`. **Valid chapter ids (exact English):** `manual`, `system`, `adapters`, `rooms`, `scripts`, `schedule`, `userdata`, `aliases`, `maintenance`, `diagnosis`, `troubleshooting`, `custom`, `changelog`, `appendices`. Unknown ids are skipped; ids you do not name are added at the end in default order. Empty `[]` = built-in order.",
|
|
213
|
+
"Admin hidden chapters hint": "Chapter **ids** to omit from **Admin** HTML and from **Markdown** when the profile is Admin — e.g. `[\"diagnosis\",\"changelog\",\"custom\"]`. **Same valid English ids** as for **chapter order**; the full list is **only** in the help for **Admin chapter order** (that JSON field is **below** on this page). Invalid ids are ignored.",
|
|
214
|
+
"Hidden chapter IDs (JSON array)": "Hidden chapter IDs (JSON array)",
|
|
215
|
+
"Admin hidden chapters JSON help": "JSON array of strings, e.g. `[\"userdata\",\"aliases\"]`. **Same valid ids** as **Admin chapter order** (see that field’s help for the full list). Empty `[]` = show all chapters.",
|
|
216
|
+
"Custom Markdown sections": "Custom Markdown sections",
|
|
217
|
+
"Custom sections JSON hint": "JSON array of objects: `{ \"title\": \"Wi-Fi\", \"body\": \"**Guest** …\", \"profiles\": [\"user\",\"onboarding\"] }`. **body** is Markdown (no raw HTML). **profiles** optional — omit to show in all three HTML profiles. Max 12 sections; long text is truncated. Example uses: emergency contacts, Wi-Fi, router model.",
|
|
218
|
+
"Custom sections (JSON)": "Custom sections (JSON)",
|
|
219
|
+
"Custom sections JSON help": "See the hint above. After editing, run **Generate documentation** again. **Walkthrough** (German, fictional demo home): https://github.com/crunchip77/ioBroker.autodoc/blob/main/docs/user-guide/README.de.md",
|
|
220
|
+
"User/Family HTML — hide chapters": "User/Family HTML — hide chapters",
|
|
221
|
+
"User hidden chapters hint": "JSON array of chapter ids to hide in **User/Family** HTML and in **Markdown** when the documentation profile is User. Example: `[\"scripts\",\"adapters\"]`. Valid ids: `manual` (project description/contact/notes only), `ai`, `guestHelp`, `atAGlance` (Quick overview from discovery; User HTML + User Markdown), `rooms`, `scripts`, `routines`, `ownerPlaybook`, `adapters`, `custom`, `system`, `troubleshooting`.",
|
|
222
|
+
"User profile — hidden chapter IDs (JSON)": "User profile — hidden chapter IDs (JSON)",
|
|
223
|
+
"User hidden chapters JSON help": "JSON array of strings. Empty `[]` shows all.",
|
|
224
|
+
"Onboarding HTML — hide chapters": "Onboarding HTML — hide chapters",
|
|
225
|
+
"Onboarding hidden chapters hint": "Hide blocks in **Onboarding** HTML and matching parts of **Markdown** (profile Onboarding). Valid ids: `welcome`, `tips`, `guestHelp`, `stats`, `ai`, `capabilities`, `rooms`, `routines`, `ownerPlaybook`, `automations`, `adapters`, `custom`, `hint`, plus for Markdown also `quickstart`, `system`, `manual` (project description/contact in welcome + manual chapter subsections).",
|
|
226
|
+
"Onboarding profile — hidden chapter IDs (JSON)": "Onboarding profile — hidden chapter IDs (JSON)",
|
|
227
|
+
"Onboarding hidden chapters JSON help": "JSON array of strings. Empty `[]` shows all.",
|
|
228
|
+
"copyForForum": "Copy for Forum"
|
|
229
|
+
}
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
{
|
|
2
|
+
"autodoc adapter settings": "autodoc的适配器设置",
|
|
3
|
+
"Project name": "Project name",
|
|
4
|
+
"Name of the ioBroker project or installation": "Name of the ioBroker project or installation",
|
|
5
|
+
"Target system": "Target system",
|
|
6
|
+
"Usually ioBroker": "Usually ioBroker",
|
|
7
|
+
"Documentation profile": "Documentation profile",
|
|
8
|
+
"Target audience for the generated documentation": "Target audience for the generated documentation",
|
|
9
|
+
"Documentation language": "Documentation language",
|
|
10
|
+
"Language for the generated documentation": "Language for the generated documentation",
|
|
11
|
+
"English": "English",
|
|
12
|
+
"German": "German",
|
|
13
|
+
"Target audience for Markdown export and default focus. HTML always includes all three profiles (admin, user, onboarding). AI text for User/Onboarding HTML runs whenever a KI provider is set, regardless of this selection.": "Target audience for Markdown export and default focus. HTML always includes all three profiles (admin, user, onboarding). AI text for User/Onboarding HTML runs whenever a KI provider is set, regardless of this selection.",
|
|
14
|
+
"Project description": "Project description",
|
|
15
|
+
"Short description of what should be documented": "Short description of what should be documented",
|
|
16
|
+
"Additional notes": "Additional notes",
|
|
17
|
+
"Optional notes, devices, adapters or special requirements": "Optional notes, devices, adapters or special requirements",
|
|
18
|
+
"Generate documentation on adapter start": "Generate documentation on adapter start",
|
|
19
|
+
"If enabled, documentation is queued each time the adapter starts (runs in the background; the instance can show green before it finishes). If disabled, a run still happens once after an update when the built-in HTML renderer version no longer matches info.templateVersion. Check the log for \"Documentation generated via startup\" and state info.lastTrigger.": "If enabled, documentation is queued each time the adapter starts (runs in the background; the instance can show green before it finishes). If disabled, a run still happens once after an update when the built-in HTML renderer version no longer matches info.templateVersion. Check the log for \"Documentation generated via startup\" and state info.lastTrigger.",
|
|
20
|
+
"Generate documentation on adapter changes": "Generate documentation on adapter changes",
|
|
21
|
+
"If enabled, documentation is regenerated automatically when adapters are installed, removed, or enabled/disabled (30 second debounce)": "If enabled, documentation is regenerated automatically when adapters are installed, removed, or enabled/disabled (30 second debounce)",
|
|
22
|
+
"Read live state values (opt-in)": "Read live state values (opt-in)",
|
|
23
|
+
"If enabled, current values for selected state roles are read and shown in User/Onboarding room cards and the Admin device table (badges next to device names). Includes e.g. temperature, blinds (level.blind), dimmers, lights (switch.light), outlets (switch/plug), humidity, power metrics, locks, door/window/contact, motion, alarm. Room members may be channels or devices — matching child states are found automatically. Very custom or empty roles are skipped.": "If enabled, current values for selected state roles are read and shown in User/Onboarding room cards and the Admin device table (badges next to device names). Includes e.g. temperature, blinds (level.blind), dimmers, lights (switch.light), outlets (switch/plug), humidity, power metrics, locks, door/window/contact, motion, alarm. Room members may be channels or devices — matching child states are found automatically. Very custom or empty roles are skipped.",
|
|
24
|
+
"Scheduled interval (hours)": "Scheduled interval (hours)",
|
|
25
|
+
"Optional timer: regenerate every X hours, independent of start and adapter-change options above. 0 = no scheduled runs (events and start still work).": "Optional timer: regenerate every X hours, independent of start and adapter-change options above. 0 = no scheduled runs (events and start still work).",
|
|
26
|
+
"Only document enabled instances": "Only document enabled instances",
|
|
27
|
+
"If enabled, only active adapter instances are included in the documentation": "If enabled, only active adapter instances are included in the documentation",
|
|
28
|
+
"Hide instance details in markdown": "Hide instance details in markdown",
|
|
29
|
+
"If enabled, the markdown output contains only summary information without the full instance list": "If enabled, the markdown output contains only summary information without the full instance list",
|
|
30
|
+
"Maximum documented instances": "Maximum documented instances",
|
|
31
|
+
"Limits how many adapter instances are included in the generated documentation, 0 means unlimited": "Limits how many adapter instances are included in the generated documentation, 0 means unlimited",
|
|
32
|
+
"ioBroker base URL (optional)": "ioBroker base URL (optional)",
|
|
33
|
+
"Used for the info.htmlUrl state. Include port, e.g. 192.168.1.100:8081 or http://myserver:8082. Protocol is optional. Leave empty for auto-detection (may fail in Docker).": "Used for the info.htmlUrl state. Include port, e.g. 192.168.1.100:8081 or http://myserver:8082. Protocol is optional. Leave empty for auto-detection (may fail in Docker).",
|
|
34
|
+
"Maximum stored documentation files": "Maximum stored documentation files",
|
|
35
|
+
"How many timestamped file sets to keep (per type: .md, .html, .json). Oldest are deleted automatically. 0 = use default (3).": "How many timestamped file sets to keep (per type: .md, .html, .json). Oldest are deleted automatically. 0 = use default (3).",
|
|
36
|
+
"Documentation states storage": "Documentation states storage",
|
|
37
|
+
"Documentation states storage help": "Full: duplicate markdown, HTML, and JSON in adapter states (legacy, larger object DB / Redis). Metadata only: keep full exports only under Files (autodoc-latest.*); states hold a short placeholder — reduces database size. Scripts that read documentation.* for full text must use /files/ or HTTP URLs instead. Download actions still write autodoc.md / .json / .html from the latest files. In both modes **`documentation.exportHashes`** stores **SHA-256 (hex)** digests of the latest MD / Admin HTML / JSON exports for change detection. **After a successful PDF export** (optional `puppeteer`), the same state also includes **`autodoc-admin.pdf`**, **`autodoc-user.pdf`**, and **`autodoc-onboarding.pdf`** digests when those files are written.",
|
|
38
|
+
"Doc states mode full": "Full (in states — larger DB)",
|
|
39
|
+
"Doc states mode metadata": "Metadata only (content in /files only)",
|
|
40
|
+
"Manual context (JSON)": "Manual context (JSON)",
|
|
41
|
+
"Additional manual information to include in documentation (description, contact, notes)": "Additional manual information to include in documentation (description, contact, notes)",
|
|
42
|
+
"Basic settings": "Basic settings",
|
|
43
|
+
"Documentation & layout": "Documentation & layout",
|
|
44
|
+
"Admin tab orientation AI": "Optional: connect an AI provider to add short explanations in exports. Leave the provider on Disabled unless you want this. Local Ollama keeps data on your network; cloud providers send metadata and text to external servers — see the privacy note below.",
|
|
45
|
+
"Admin tab orientation basic": "You are on Basic settings: language, when documentation regenerates, optional live values in room cards, Generate now / last run / forum card. The tabs My documentation, Advanced, and HTML export & extra sections hold readable content and filters. Notifications and AI documentation at the end are optional.",
|
|
46
|
+
"Admin tab orientation documentation": "This tab holds reader-facing texts. Tab Advanced is for filters, Markdown detail limits, ioBroker base URL for links/QR codes, documentation storage mode, optional file copy, and the documentation setup score. Tab HTML export & extra sections controls colors/theme, chapter visibility and order, and custom Markdown. AI-only context hints for prompts (never in exports) live on AI documentation once a provider is enabled.",
|
|
47
|
+
"Admin tab orientation notify": "Optional: send a message (e.g. Telegram, email) after each documentation run. Skip this tab if you do not need alerts.",
|
|
48
|
+
"Basic section profile": "Profile & language",
|
|
49
|
+
"Basic section triggers": "When to regenerate",
|
|
50
|
+
"Basic section discovery": "Live values in the documentation",
|
|
51
|
+
"Basic section manual": "Run now & status",
|
|
52
|
+
"Manual section project": "Project, contact & notes",
|
|
53
|
+
"Doc section appearance": "Look, theme & logo",
|
|
54
|
+
"Doc section expert styling": "Optional: custom font & CSS",
|
|
55
|
+
"Advanced styling open hint": "Optional expert settings: change the font or add CSS on top of the **theme preset** and **color scheme** above. Leave empty to keep the default look. A syntax error in CSS can break the layout. **Chapter visibility and custom Markdown sections** are in the blocks **above** on this tab — not part of this section.",
|
|
56
|
+
"Doc section chapters": "Which chapters to show (per profile)",
|
|
57
|
+
"Notify section": "After each documentation run",
|
|
58
|
+
"AI section provider": "Provider, model & connection",
|
|
59
|
+
"AI section tuning": "Sampling temperature (optional)",
|
|
60
|
+
"AI section scripts": "JavaScript scripts (optional AI pass)",
|
|
61
|
+
"My documentation": "My documentation",
|
|
62
|
+
"Advanced": "Advanced",
|
|
63
|
+
"Advanced section content": "What to include & limits",
|
|
64
|
+
"Advanced section states": "State storage & public URL",
|
|
65
|
+
"Advanced section filesystem": "Optional: extra copy to disk",
|
|
66
|
+
"Advanced setup score intro": "The **documentation setup score** (below) appears in generated Admin documentation. One optional row checks that the **ioBroker base URL** above is not empty — useful for QR codes and bookmark links. Turn individual rows off or change thresholds if they do not fit your installation.",
|
|
67
|
+
"Advanced section maintenance score": "Documentation setup score",
|
|
68
|
+
"Maintenance score include description check": "Include project description length",
|
|
69
|
+
"Maintenance score description check help": "When enabled, the Admin export **documentation setup score** counts this row: “My documentation” — project description must reach at least the minimum length below. Turn off if you deliberately keep a short description.",
|
|
70
|
+
"Maintenance score include base URL check": "Include ioBroker base URL",
|
|
71
|
+
"Maintenance score base URL check help": "When enabled, the setup score requires a non-empty **ioBroker base URL** above (QR codes, bookmark links, troubleshooting bookmarks).",
|
|
72
|
+
"Maintenance score include unassigned check": "Include unassigned instances check",
|
|
73
|
+
"Maintenance score unassigned check help": "When enabled, the setup score fails when the number of enabled adapter instances not assigned to any room is **≥** the threshold below. Many setups skip rooms on purpose — raise the threshold or disable this check.",
|
|
74
|
+
"Maintenance score min description length": "Minimum project description length (characters)",
|
|
75
|
+
"Maintenance score min description length help": "Trimmed character count. Default 40; the adapter clamps to **5–2000**.",
|
|
76
|
+
"Maintenance score unassigned warn at": "Unassigned instances — warn from (count)",
|
|
77
|
+
"Maintenance score unassigned warn at help": "The check fails when the unassigned count is **≥** this value. Default **10**; the adapter clamps to **1–500**. Lower values are stricter.",
|
|
78
|
+
"Admin export scripts hint": "In the generated Admin HTML/Markdown, JavaScript scripts are listed by ioBroker folder (Global first, with a short reminder). This matches the Script Engine tree — not a separate AutoDoc setting.",
|
|
79
|
+
"AI documentation": "AI documentation",
|
|
80
|
+
"Manual documentation hint": "These fields are shown in all documentation profiles. Use “Help & emergencies”, “Routines (your words)”, and “How we run this home (your playbook)” for guests and family in plain language — nothing is invented automatically. Adapter and room notes make the documentation more readable for non-technical users. In the Admin HTML/Markdown export, JavaScript scripts are grouped by ioBroker folder; see the short note under “Global scripts” about execution order and sensible use.",
|
|
81
|
+
"Guest & family (plain language)": "Guest & family (plain language)",
|
|
82
|
+
"Help & emergencies (guests/family)": "Help & emergencies (guests/family)",
|
|
83
|
+
"Who to call, what to try if something fails, where the fuse box is — your words only; nothing is invented automatically.": "Who to call, what to try if something fails, where the fuse box is — your words only; nothing is invented automatically.",
|
|
84
|
+
"Routines & automations (your words)": "Routines & automations (your words)",
|
|
85
|
+
"Describe in everyday language what often runs by itself (lights, heating, blinds). Shown near the script list; complements technical script names.": "Describe in everyday language what often runs by itself (lights, heating, blinds). Shown near the script list; complements technical script names.",
|
|
86
|
+
"Troubleshooting — quick lines (optional)": "Troubleshooting — quick lines (optional)",
|
|
87
|
+
"Troubleshooting quick lines hint": "Short one-liners for guests and family (Wi‑Fi, power, water, other). They appear in the **Help & emergencies** block together with **bookmark links** to this documentation (same URLs as QR codes — requires **Base URL** under Advanced). All optional; nothing is invented automatically.",
|
|
88
|
+
"Quick: Wi-Fi / network": "Quick: Wi-Fi / network",
|
|
89
|
+
"One line, e.g. guest Wi-Fi name or where a repeater is — optional.": "One line, e.g. guest Wi-Fi name or where a repeater is — optional.",
|
|
90
|
+
"Quick: power / fuses": "Quick: power / fuses",
|
|
91
|
+
"One line, e.g. where the electrical panel is — optional.": "One line, e.g. where the electrical panel is — optional.",
|
|
92
|
+
"Quick: water shutoff": "Quick: water shutoff",
|
|
93
|
+
"One line, e.g. where to turn off main water — optional.": "One line, e.g. where to turn off main water — optional.",
|
|
94
|
+
"Quick: other": "Quick: other",
|
|
95
|
+
"One more short line (alarm code location, key box, etc.) — optional.": "One more short line (alarm code location, key box, etc.) — optional.",
|
|
96
|
+
"Contact person": "Contact person",
|
|
97
|
+
"Who manages this system? e.g. 'Max Mustermann, Telegram @max' - shown so guests and family know who to ask": "Who manages this system? e.g. 'Max Mustermann, Telegram @max' - shown so guests and family know who to ask",
|
|
98
|
+
"General notes": "General notes",
|
|
99
|
+
"General notes about this installation (e.g. special setups, known issues)": "General notes about this installation (e.g. special setups, known issues)",
|
|
100
|
+
"Per-adapter notes": "Per-adapter notes",
|
|
101
|
+
"Adapter notes": "Adapter notes",
|
|
102
|
+
"Add a human-readable note for specific adapters (shown in all profiles)": "Add a human-readable note for specific adapters (shown in all profiles)",
|
|
103
|
+
"Adapter (e.g. telegram)": "Adapter (e.g. telegram)",
|
|
104
|
+
"Note": "Note",
|
|
105
|
+
"Per-room notes": "Per-room notes",
|
|
106
|
+
"Room notes": "Room notes",
|
|
107
|
+
"Add a human-readable note for specific rooms (shown in User and Onboarding profiles)": "Add a human-readable note for specific rooms (shown in User and Onboarding profiles)",
|
|
108
|
+
"Room name": "Room name",
|
|
109
|
+
"Generate now hint": "Click the button below to generate the documentation immediately without restarting the adapter. All three profiles (Admin, User, Onboarding) are generated simultaneously.",
|
|
110
|
+
"Generate documentation now": "Generate documentation now",
|
|
111
|
+
"Generate documentation": "Generate documentation",
|
|
112
|
+
"Start documentation generation now? This may take a few seconds.": "Start documentation generation now? This may take a few seconds.",
|
|
113
|
+
"Generate": "Generate",
|
|
114
|
+
"Cancel": "Cancel",
|
|
115
|
+
"Last generated": "Last generated",
|
|
116
|
+
"Forum system card (plaintext)": "Forum system card (plaintext)",
|
|
117
|
+
"AI explain JavaScript scripts (opt-in)": "AI explain JavaScript scripts (opt-in)",
|
|
118
|
+
"Sends sanitized script source to the same AI provider to add short plain-language explanations in User/Onboarding docs. Lines matching common secret patterns are redacted first; still review before enabling on production systems.": "Sends sanitized script source to the same AI provider to add short plain-language explanations in User/Onboarding docs. Lines matching common secret patterns are redacted first; still review before enabling on production systems.",
|
|
119
|
+
"Max characters of script source per KI call": "Max characters of script source per KI call",
|
|
120
|
+
"How many characters of each script (after redaction) are sent to the model; longer sources are truncated. Default 12000. Lower to speed up or fit small context; raise only if your model and timeout allow. Range 2000–100000. State info.aiScriptSourceProgress shows e.g. 5/12 while processing.": "How many characters of each script (after redaction) are sent to the model; longer sources are truncated. Default 12000. Lower to speed up or fit small context; raise only if your model and timeout allow. Range 2000–100000. State info.aiScriptSourceProgress shows e.g. 5/12 while processing.",
|
|
121
|
+
"Cancel script KI hint": "Use this if a long script-AI run must be stopped: set action.cancelScriptSourceAi, use the button, or sendTo command cancelScriptSourceAi. The current KI request may still finish; further scripts are skipped. info.aiScriptSourceProgress shows cancelled when the phase ends.",
|
|
122
|
+
"Cancel script KI (running generation)": "Cancel script KI (running generation)",
|
|
123
|
+
"Cancel script KI": "Cancel script KI",
|
|
124
|
+
"Stop the optional per-script KI pass? The request that is already running may still finish; further scripts will not be started. (The main user/onboarding KI calls run before this phase.)": "Stop the optional per-script KI pass? The request that is already running may still finish; further scripts will not be started. (The main user/onboarding KI calls run before this phase.)",
|
|
125
|
+
"User/Family - hide from family": "User/Family - hide from family",
|
|
126
|
+
"User hide hint": "Rooms and adapters listed here are not shown in the User/Family profile.",
|
|
127
|
+
"Hidden rooms (User/Family)": "Hidden rooms (User/Family)",
|
|
128
|
+
"User hidden rooms help": "Enter the exact room name as it appears in ioBroker",
|
|
129
|
+
"Hidden adapters (User/Family)": "Hidden adapters (User/Family)",
|
|
130
|
+
"User hidden adapters help": "Enter the adapter name without instance number (e.g. backitup)",
|
|
131
|
+
"Onboarding - hide from guests": "Onboarding - hide from guests",
|
|
132
|
+
"Onboarding hide hint": "Rooms and adapters listed here are not shown in the Onboarding profile - useful for technical rooms (server, backup) that guests do not need to see.",
|
|
133
|
+
"Hidden rooms (Onboarding)": "Hidden rooms (Onboarding)",
|
|
134
|
+
"Onboarding hidden rooms help": "Enter the exact room name as it appears in ioBroker (e.g. Server room, Backup)",
|
|
135
|
+
"Room name (exact)": "Room name (exact)",
|
|
136
|
+
"Hidden adapters (Onboarding)": "Hidden adapters (Onboarding)",
|
|
137
|
+
"Onboarding hidden adapters help": "Enter the adapter name without instance number (e.g. backitup, simple-api)",
|
|
138
|
+
"Onboarding guest view — list internal JavaScript file names": "Onboarding guest view — list internal JavaScript file names",
|
|
139
|
+
"onboarding guest script names help": "Off (default): guest Onboarding shows only how many JavaScript automations are active — no internal script file names, and no per-script lines in Quick Start (ioBroker **common.desc** is not a reliable guest-facing “description”). On: legacy — up to five script names in “What runs automatically?” plus a short “more running” line; Quick Start may still list scripts with name + **common.desc** as today. Full detail stays in the Admin profile.",
|
|
140
|
+
"Adapter name (e.g. backitup)": "Adapter name (e.g. backitup)",
|
|
141
|
+
"Manual context (JSON, legacy)": "Manual context (JSON, legacy)",
|
|
142
|
+
"Legacy JSON field. Use the 'My documentation' tab instead. Only needed for migration.": "Legacy JSON field. Use the 'My documentation' tab instead. Only needed for migration.",
|
|
143
|
+
"French": "French",
|
|
144
|
+
"User/Family": "User/Family",
|
|
145
|
+
"Notifications": "Notifications",
|
|
146
|
+
"Send notification after documentation generation": "Send notification after documentation generation",
|
|
147
|
+
"If enabled, a message is sent via the configured adapter after each generation": "If enabled, a message is sent via the configured adapter after each generation",
|
|
148
|
+
"Messaging adapter instance": "Messaging adapter instance",
|
|
149
|
+
"Instance to send the notification through, e.g. telegram.0, pushover.0, email.0": "Instance to send the notification through, e.g. telegram.0, pushover.0, email.0",
|
|
150
|
+
"Recipient (optional)": "Recipient (optional)",
|
|
151
|
+
"Telegram username, Pushover device, or email address — leave empty for adapter default": "Telegram username, Pushover device, or email address — leave empty for adapter default",
|
|
152
|
+
"Custom message template (optional)": "Custom message template (optional)",
|
|
153
|
+
"Use {project}, {summary}, {version}, {trigger} as placeholders. Leave empty for default message.": "Use {project}, {summary}, {version}, {trigger} as placeholders. Leave empty for default message.",
|
|
154
|
+
"AI-Enhanced Documentation": "AI-Enhanced Documentation",
|
|
155
|
+
"AI provider": "AI provider",
|
|
156
|
+
"Select an AI provider for narrative summaries. Disabled for admin profile (all data is already factual). Not used for admin profile.": "Select an AI provider for narrative summaries. Not used for admin profile (all data is already factual).",
|
|
157
|
+
"Disabled": "Disabled",
|
|
158
|
+
"AI privacy warning": "⚠️ Privacy note: Cloud providers (Mistral, Groq, Anthropic) receive adapter names, room names, JavaScript script titles, and optional script purpose text (common.desc) when present. No passwords or IP addresses are sent, but your smart home structure is visible to the provider. Ollama runs locally — nothing leaves your network.",
|
|
159
|
+
"AI hardware hint": "ℹ️ Low-power hosts (e.g. Raspberry Pi) or CPU-only Ollama: small models run faster but summaries may be rougher or less reliable — that is expected. You can disable AI here; Markdown/HTML docs still generate from your real ioBroker data. For better text: run Ollama on a faster PC/NAS and set the Ollama base URL to that host, or use a cloud provider if the privacy trade-off is acceptable.",
|
|
160
|
+
"Ollama — local, private, free (recommended)": "Ollama — local, private, free (recommended)",
|
|
161
|
+
"Mistral AI — EU/GDPR, free tier": "Mistral AI — EU/GDPR, free tier",
|
|
162
|
+
"Groq — US, free tier (data may be used for training)": "Groq — US, free tier (data may be used for training)",
|
|
163
|
+
"Anthropic Claude — paid, no training on data": "Anthropic Claude — paid, no training on data",
|
|
164
|
+
"Ollama recommended: runs locally, no data leaves your network. Cloud providers send adapter/room/script names to external servers.": "Ollama recommended: runs locally, no data leaves your network. Cloud providers send adapter and room identifiers, script titles, and any optional common.desc text to external servers.",
|
|
165
|
+
"AI model (optional)": "AI model (optional)",
|
|
166
|
+
"Leave empty for default. Ollama: llama3.2 / gemma3. Mistral: mistral-small-latest. Groq: llama-3.3-70b-versatile. Anthropic: claude-haiku-4-5-20251001": "Leave empty for default. Ollama: llama3.2 / gemma3. Mistral: mistral-small-latest. Groq: llama-3.3-70b-versatile. Anthropic: claude-haiku-4-5-20251001",
|
|
167
|
+
"API key": "API key",
|
|
168
|
+
"Mistral: console.mistral.ai | Groq: starts with gsk_... | Anthropic: starts with sk-ant-... | Ollama: leave empty": "Mistral: console.mistral.ai | Groq: starts with gsk_... | Anthropic: starts with sk-ant-... | Ollama: leave empty",
|
|
169
|
+
"Ollama base URL": "Ollama base URL",
|
|
170
|
+
"Only for Ollama. Default: http://localhost:11434": "Only for Ollama. Default: http://localhost:11434",
|
|
171
|
+
"AI request timeout seconds (optional)": "AI request timeout seconds (optional)",
|
|
172
|
+
"Maximum wait for one LLM HTTP request. Default 300. Each generation uses several calls (user, onboarding, sometimes a German polish pass). Increase for slow local models on CPU (e.g. 480 or 600 for llama3.1:8b on NAS). Range 30–900.": "Maximum wait for one LLM HTTP request. Default 300. Each generation uses several calls (user, onboarding, sometimes a German polish pass). Increase for slow local models on CPU (e.g. 480 or 600 for llama3.1:8b on NAS). Range 30–900.",
|
|
173
|
+
"AI temperature — user profile (optional)": "AI temperature — user profile (optional)",
|
|
174
|
+
"Sampling temperature for resident-facing AI text. Leave empty for the provider default. Typical range 0–2 (Ollama, Groq, Mistral); Anthropic accepts 0–1 (values above 1 are clamped). Lower ≈ steadier wording; higher ≈ more variation — tune after testing.": "Sampling temperature for resident-facing AI text. Leave empty for the provider default. Typical range 0–2 (Ollama, Groq, Mistral); Anthropic accepts 0–1 (values above 1 are clamped). Lower ≈ steadier wording; higher ≈ more variation — tune after testing.",
|
|
175
|
+
"AI temperature — onboarding (optional)": "AI temperature — onboarding (optional)",
|
|
176
|
+
"Sampling temperature for guest/onboarding AI text. Same rules as user profile. The German Sie polish pass uses a fixed low temperature and ignores this field.": "Sampling temperature for guest/onboarding AI text. Same rules as user profile. The German Sie polish pass uses a fixed low temperature and ignores this field.",
|
|
177
|
+
"Filesystem export path (optional)": "Filesystem export path (optional)",
|
|
178
|
+
"Export path hint": "Optional: additional export to a real filesystem path outside ioBroker's database. Leave empty to disable. Examples: /mnt/nas/autodoc, D:\\Docs\\smarthome. All three profiles (admin/user/onboarding) are written as HTML files. When PDF export is enabled and **puppeteer** is installed in this adapter folder, matching **autodoc-*.pdf** files are mirrored here too. Useful for accessing the documentation when ioBroker is down, or for serving via a web server.",
|
|
179
|
+
"Advanced section pdf export": "PDF export (optional Puppeteer / Chromium)",
|
|
180
|
+
"Pdf export after generation label": "Generate PDF after each documentation run",
|
|
181
|
+
"Pdf export after generation help": "**Optional:** after each successful generation, create **autodoc-admin.pdf**, **autodoc-user.pdf**, **autodoc-onboarding.pdf** via headless Chromium (**npm package `puppeteer`** must be installed in **this adapter directory**, e.g. clone/tarball → `npm install puppeteer` or enable optional dependencies during install). Uses the same sandbox flags as Mermaid CLI (Docker/LXC-friendly). **Embedded Mermaid SVG** (optional @mermaid-js/mermaid-cli) prints offline; **jsDelivr** client Mermaid needs internet during the PDF step. Large documents can take minutes and use noticeable RAM/CPU. You can also trigger PDFs manually with the adapter state **action.exportPdf** (no full regeneration).",
|
|
182
|
+
"multihostDistribution": "Host Distribution",
|
|
183
|
+
"AI context hints": "AI context hints",
|
|
184
|
+
"AI context hints (owner notes)": "AI context hints (owner notes)",
|
|
185
|
+
"AI context hints hint": "Optional bullet-point facts about your home for the AI — used only in the AI prompt, never shown in the documentation. Example: '- Lights in living room auto-off at 22:00', '- Guests can control temperature via voice'. The more specific, the better the AI text quality. — **Guest onboarding:** Prefer everyday wording (e.g. \"we are still setting things up\", \"docs will be expanded\"). If you pack in IT/project jargon (\"adapter\", \"repository\", \"not in the repo\", …), the model may repeat it in guest-facing text. A **safety filter** then replaces the guest AI block with a neutral default so visitors do not read admin-style jargon. That behaviour is intentional; relaxing it would weaken guest-safe output. The **resident / family profile** is not subject to this rule.",
|
|
186
|
+
"AI context hints help": "Short points only the AI sees — not shown in exported documentation. Privacy: sent to the configured AI provider. — **Guest profile:** See the longer hint above: technical wording in context hints can cause the guest AI text to be discarded and replaced with neutral copy.",
|
|
187
|
+
"HTML export & extra sections": "HTML export & extra sections",
|
|
188
|
+
"Doc layout intro": "Tune generated **HTML** (all three profiles): optional forced light/dark mode, a **color preset** (no raw CSS), logo, and your own Markdown chapters. **Font** and **extra CSS** are optional expert settings at the **bottom** of this tab (after chapter visibility and custom sections). Admin **chapter order** and **hide list** apply to Admin HTML and Admin-profile Markdown. **Hide lists** for **User/Family** and **Onboarding** (e.g. `ownerPlaybook`) are **below** on this tab and affect those HTML exports and Markdown when that documentation profile is selected. Markdown also uses your custom sections.",
|
|
189
|
+
"Doc layout pdf hint": "**PDF export:** settings are on the **Advanced** tab (below filesystem export path): optional **PDF after each generation**, or use the **`action.exportPdf`** button state any time. Requires optional **`puppeteer`** in the adapter directory. Writes **`autodoc-{admin,user,onboarding}.pdf`** under adapter **Files** and mirrors them when a filesystem export path is set.",
|
|
190
|
+
"Advanced HTML styling (optional)": "Advanced HTML styling (optional)",
|
|
191
|
+
"Advanced HTML styling hint": "**Expert / optional:** Custom font and CSS change how exported HTML looks. Syntax mistakes or future AutoDoc updates can make the layout look wrong — leave these fields empty if you are unsure.",
|
|
192
|
+
"HTML color scheme": "HTML color scheme",
|
|
193
|
+
"Auto (viewer toggle + saved preference)": "Auto (viewer toggle + saved preference)",
|
|
194
|
+
"Light only": "Light only",
|
|
195
|
+
"Dark only": "Dark only",
|
|
196
|
+
"HTML color scheme help": "**Auto:** visitors can toggle light/dark; preference is stored in the browser. **Light / Dark:** fixed look; the toggle is hidden. Does not affect Markdown files.",
|
|
197
|
+
"HTML theme preset": "HTML color preset",
|
|
198
|
+
"HTML theme preset help": "Adjusts the built-in **CSS variable** palette (background, text, links, table headers, …) for **exported HTML** only. Lighter on writing custom CSS: change the preset first, use **Extra CSS** only for fine-tuning. Works with the **color scheme** above (light and dark each get a matching palette).",
|
|
199
|
+
"HTML theme preset default": "Default",
|
|
200
|
+
"HTML theme preset high contrast": "High contrast",
|
|
201
|
+
"HTML theme preset warm": "Warm",
|
|
202
|
+
"HTML theme preset slate": "Slate",
|
|
203
|
+
"Sidebar logo URL": "Sidebar logo URL",
|
|
204
|
+
"Sidebar logo URL help": "Optional image above the search box in exported HTML. Use **https://…** or a same-site path starting with **/** (e.g. a file under ioBroker `/files/…`). Other schemes are ignored.",
|
|
205
|
+
"Font stack (CSS)": "Font stack (CSS)",
|
|
206
|
+
"Font stack help": "Optional `font-family` value for body text, e.g. `Georgia, serif` or `system-ui, sans-serif`. Characters `< > { }` are stripped for safety.",
|
|
207
|
+
"Extra CSS": "Extra CSS",
|
|
208
|
+
"Extra CSS help": "Appended to the HTML `<style>` block. For branding (accent colours, spacing). You control this CSS — avoid pasting untrusted content. Do not close `</style>` inside this field. Prefer small rules; overly broad selectors can break the page after updates.",
|
|
209
|
+
"Admin HTML — hide chapters": "Admin HTML — hide chapters",
|
|
210
|
+
"Admin chapter order hint": "Optional: reorder **Admin** HTML and **Admin** Markdown. Enter **chapter ids** in the JSON field below (`[]` = built-in order). Ids you omit are appended in the default product order at the end. The **full list of valid English ids** appears **only** in that field’s help (click the `?` tooltip) — it is not repeated here.",
|
|
211
|
+
"Admin chapter order (JSON array)": "Admin chapter order (JSON array)",
|
|
212
|
+
"Admin chapter order JSON help": "JSON array of strings, e.g. `[\"system\",\"adapters\",\"manual\"]`. **Valid chapter ids (exact English):** `manual`, `system`, `adapters`, `rooms`, `scripts`, `schedule`, `userdata`, `aliases`, `maintenance`, `diagnosis`, `troubleshooting`, `custom`, `changelog`, `appendices`. Unknown ids are skipped; ids you do not name are added at the end in default order. Empty `[]` = built-in order.",
|
|
213
|
+
"Admin hidden chapters hint": "Chapter **ids** to omit from **Admin** HTML and from **Markdown** when the profile is Admin — e.g. `[\"diagnosis\",\"changelog\",\"custom\"]`. **Same valid English ids** as for **chapter order**; the full list is **only** in the help for **Admin chapter order** (that JSON field is **below** on this page). Invalid ids are ignored.",
|
|
214
|
+
"Hidden chapter IDs (JSON array)": "Hidden chapter IDs (JSON array)",
|
|
215
|
+
"Admin hidden chapters JSON help": "JSON array of strings, e.g. `[\"userdata\",\"aliases\"]`. **Same valid ids** as **Admin chapter order** (see that field’s help for the full list). Empty `[]` = show all chapters.",
|
|
216
|
+
"Custom Markdown sections": "Custom Markdown sections",
|
|
217
|
+
"Custom sections JSON hint": "JSON array of objects: `{ \"title\": \"Wi-Fi\", \"body\": \"**Guest** …\", \"profiles\": [\"user\",\"onboarding\"] }`. **body** is Markdown (no raw HTML). **profiles** optional — omit to show in all three HTML profiles. Max 12 sections; long text is truncated. Example uses: emergency contacts, Wi-Fi, router model.",
|
|
218
|
+
"Custom sections (JSON)": "Custom sections (JSON)",
|
|
219
|
+
"Custom sections JSON help": "See the hint above. After editing, run **Generate documentation** again. **Walkthrough** (German, fictional demo home): https://github.com/crunchip77/ioBroker.autodoc/blob/main/docs/user-guide/README.de.md",
|
|
220
|
+
"User/Family HTML — hide chapters": "User/Family HTML — hide chapters",
|
|
221
|
+
"User hidden chapters hint": "JSON array of chapter ids to hide in **User/Family** HTML and in **Markdown** when the documentation profile is User. Example: `[\"scripts\",\"adapters\"]`. Valid ids: `manual` (project description/contact/notes only), `ai`, `guestHelp`, `atAGlance` (Quick overview from discovery; User HTML + User Markdown), `rooms`, `scripts`, `routines`, `ownerPlaybook`, `adapters`, `custom`, `system`, `troubleshooting`.",
|
|
222
|
+
"User profile — hidden chapter IDs (JSON)": "User profile — hidden chapter IDs (JSON)",
|
|
223
|
+
"User hidden chapters JSON help": "JSON array of strings. Empty `[]` shows all.",
|
|
224
|
+
"Onboarding HTML — hide chapters": "Onboarding HTML — hide chapters",
|
|
225
|
+
"Onboarding hidden chapters hint": "Hide blocks in **Onboarding** HTML and matching parts of **Markdown** (profile Onboarding). Valid ids: `welcome`, `tips`, `guestHelp`, `stats`, `ai`, `capabilities`, `rooms`, `routines`, `ownerPlaybook`, `automations`, `adapters`, `custom`, `hint`, plus for Markdown also `quickstart`, `system`, `manual` (project description/contact in welcome + manual chapter subsections).",
|
|
226
|
+
"Onboarding profile — hidden chapter IDs (JSON)": "Onboarding profile — hidden chapter IDs (JSON)",
|
|
227
|
+
"Onboarding hidden chapters JSON help": "JSON array of strings. Empty `[]` shows all.",
|
|
228
|
+
"copyForForum": "Copy for Forum"
|
|
229
|
+
}
|