[{"aas_base_url":"https://aas-{STACK_SUFFIX}.{BASE_DOMAIN}","aas_id":"urn:twindustrial.de:aas:platform:twin-bpmain:1","feature_count":17,"features":[{"description":"Hauptmenue im Kopfbereich.","description_md":"## Zweck\r\nStandardisierte Plattformnavigation.","doc_ref":"docs/COMPONENTS.md#ui-flows","id":"menu.top","kind":"menu","menu_icon":"","menu_label":"Adressen","parent_id":"menu.tab","required_roles":"","route":"","sort_order":"001","title":"Adressen"},{"description":"Oeffnet die App-Verwaltung.","description_md":"## Zweck\r\nEinladungen zur pflege der Parterdaten","doc_ref":"","id":"feature.top.twin-app","kind":"feature","menu_icon":"","menu_label":"Partner Einladungen","parent_id":"menu.top","required_roles":"twin_bpdata_editor","route":"https://twindustrial.{BASE_DOMAIN}/twin-bpdata","sort_order":"010","title":"Partnerdaten extern pflegen"},{"description":"Standardfunktionen fuer technische Einstellungen.","description_md":"## Zweck\r\nTechnische und organisatorische Standardfunktionen.","doc_ref":"","id":"menu.conf","kind":"menu","menu_icon":"icon_settings_tune","menu_label":"Einstellungen","parent_id":"menu.top","required_roles":"twin_bpmain_editor","route":"","sort_order":"040","title":"Einstellungen"},{"description":"System- und Dienstestatus.","description_md":"## Zweck\r\nBetriebs- und Systemansicht.","doc_ref":"","id":"feature.conf.systems","kind":"feature","menu_icon":"","menu_label":"Systeme","parent_id":"menu.conf","required_roles":"twin_bpmain_editor,twin_bpmain_developer","route":"/systems","sort_order":"041","title":"Systeme"},{"description":"Keycloak Benutzerverwaltung.","description_md":"## Zweck\r\nBenutzer und Rollen im Realm.","doc_ref":"","id":"feature.conf.users","kind":"feature","menu_icon":"","menu_label":"Benutzer","parent_id":"menu.conf","required_roles":"twin_bpmain_editor,twin_bpmain_developer","route":"https://id.{BASE_DOMAIN}","sort_order":"042","title":"Benutzer"},{"description":"Fehler melden oder Idee teilen.","description_md":"## Zweck\r\nRueckmeldungen und Fehler erfassen.","doc_ref":"","id":"feature.conf.feedback","kind":"feature","menu_icon":"","menu_label":"Feedback","parent_id":"menu.conf","required_roles":"twin_bpmain_user,twin_bpmain_editor,twin_bpmain_developer","route":"action:feedback","sort_order":"043","title":"Feedback"},{"description":"Sprachauswahl im Kopfbereich.","description_md":"","doc_ref":"","id":"feature.top.lang-selector","kind":"lang_selector","menu_icon":"icon_globe","menu_label":"","parent_id":"menu.top","required_roles":"","route":"","sort_order":"050","title":"Sprache"},{"description":"Benutzeranzeige und Logout.","description_md":"","doc_ref":"","id":"feature.top.user-data","kind":"user_data","menu_icon":"","menu_label":"Benutzer","parent_id":"menu.top","required_roles":"","route":"","sort_order":"051","title":"Benutzer"},{"description":"Hauptfunktionen Businessparter","description_md":"","doc_ref":"","id":"menu.main","kind":"menu","menu_icon":"","menu_label":"Funktionen BP Pflege","parent_id":"","required_roles":"twin_bpmain_user","route":"","sort_order":"90","title":"Funktionen BP Pflege"},{"description":"Partner suchen","description_md":"","doc_ref":"","id":"menu.main.search","kind":"feature","menu_icon":"icon_search","menu_label":"Suche","parent_id":"menu.main","required_roles":"twin_bpmain_user","route":"/search","sort_order":"91","title":"Suche"},{"description":"Gesch\u00e4ftspartner anlegen","description_md":"##Gesch\u00e4ftspartner anlegen","doc_ref":"","id":"menu.main.new","kind":"feature","menu_icon":"","menu_label":"BP anlegen","parent_id":"menu.main","required_roles":"twin_bpmain_editor","route":"/twin-bpmain/new","sort_order":"92","title":"BP anlegen"},{"description":"Fachliche Tab-Navigation innerhalb von twin-bpmain.","description_md":"## Zweck\r\nDatengetriebene Tab-Navigation fuer die Hauptansicht.","doc_ref":"docs/COMPONENTS.md#ui-flows","id":"menu.tab","kind":"menu","menu_icon":"","menu_label":"Tab Navigation","parent_id":"","required_roles":"","route":"","sort_order":"100","title":"Tab Navigation"},{"description":"Pflege allg. Daten zur Firma","description_md":"## Zweck\r\nObjektliste und Pflegeansicht.","doc_ref":"docs/COMPONENTS.md#company-object-service","id":"menu.tab.maindata","kind":"feature","menu_icon":"","menu_label":"Allgemeine Daten","parent_id":"menu.tab","required_roles":"twin_bpmain_user,twin_bpmain_editor,twin_bpmain_admin","route":"/?tab=maindata","sort_order":"110","title":"Allgemeine Daten"},{"description":"Pflege Adressen","description_md":"## Pflege von unterschiedlichen Adresstypen\r\n\r\n- Postanschrift \r\n- Lieferadressen\r\n- Rechnungsadressen","doc_ref":"","id":"menu.tab.adress","kind":"feature","menu_icon":"","menu_label":"Adressen","parent_id":"menu.tab","required_roles":"twin_bpmain_editor","route":"/?tab=address","sort_order":"120","title":"Adressen"},{"description":"Pflege Ansprechpartner","description_md":"## Ansprechpartner","doc_ref":"","id":"menu.tab.ap","kind":"feature","menu_icon":"","menu_label":"Ansprechpartner","parent_id":"menu.tab","required_roles":"twin_bpmain_editor","route":"/?tab=ap","sort_order":"130","title":"Ansprechpartner"},{"description":"Pflege der Steuer- und Finanzdaten","description_md":"##Pflege der Steuer- und Finanzdaten","doc_ref":"","id":"menu.tab.finanz","kind":"feature","menu_icon":"","menu_label":"Steuerdaten","parent_id":"menu.tab","required_roles":"twin_bpmain_editor","route":"/?tab=finanz","sort_order":"140","title":"Steuerdaten"},{"description":"Technischer Status der App.","description_md":"## Zweck\r\nHealth- und Laufzeitstatus anzeigen.","doc_ref":"","id":"tab.status","kind":"feature","menu_icon":"","menu_label":"Status","parent_id":"menu.tab","required_roles":"twin_bpmain_user,twin_bpmain_editor,twin_bpmain_developer","route":"/?tab=status","sort_order":"150","title":"Systemstatus"}],"href":"/apps/twin-bpmain","icon":"icon_business_partners","id":"twin-bpmain","layout":"tabs","owner":"twindustrial.de","realm_id":"basyx-003","required_permission":"app.open:twin-bpmain","required_role":"twin_bpmain_user","required_roles":"twin_bpmain_user,twin_bpmain_editor,twin_bpmain_admin","show_in_portal":true,"stack_id":"003","status":"active","summary":"Firmendaten, Ansprechpartner, Adressen und Steuerdaten.","tags":[],"title":"Businesspartner","url":"https://twindustrial.xlnetz.de/twin-bpmain","version":"1"},{"aas_base_url":"https://aas-{STACK_SUFFIX}.{BASE_DOMAIN}","aas_id":"urn:twindustrial.de:aas:platform:twin-mass:1.0","feature_count":12,"features":[{"description":"Zugang zu Handbuechern, Dokumentkacheln und RAG-relevanten Dokumentartefakten.","description_md":"## Zweck\r\n- Dokumente laden, strukturieren und fuer RAG bereitstellen.\r\n\r\n## Modelle\r\n- IDTA 02004\r\n- IDTA 02063\r\n- ManualKnowledgeSM\r\n- RagAnchoringSM","doc_ref":"00_machine_assistant_concept.md;01_document_tiles.md","id":"menu.documents","kind":"menu","menu_icon":"description","menu_label":"Dokumente","parent_id":"","required_roles":"twin_mass_user,twin_mass_editor,twin_mass_developer","route":"/documents","sort_order":"10","title":"Dokumente"},{"description":"Zeigt Dokumente als strukturierte Kacheln mit OCR-, Segmentierungs- und Metadatenbezug.","description_md":"## Funktionen\r\n- Upload\r\n- OCR\r\n- Chunking\r\n- Figure Enrichment","doc_ref":"01_document_tiles.md","id":"feature.documents.tiles","kind":"feature","menu_icon":"grid_view","menu_label":"Dokumentkacheln","parent_id":"menu.documents","required_roles":"twin_mass_user,twin_mass_editor,twin_mass_developer","route":"/documents/tiles","sort_order":"11","title":"Dokumentkacheln"},{"description":"Maschinenassistenz mit RAG, Quellenbezug und Betriebs-/Wartungskontext.","description_md":"## Zweck\r\n- Chat mit Dokument- und AAS-Kontext\r\n- nachvollziehbare Quellen\r\n- Einbindung von Bild- und Monitoring-Kontext","doc_ref":"03_machine_assistant.md","id":"menu.assistant","kind":"menu","menu_icon":"smart_toy","menu_label":"Assistent","parent_id":"","required_roles":"twin_mass_user,twin_mass_editor,twin_mass_developer","route":"/assistant","sort_order":"20","title":"Assistent"},{"description":"Chat-Ansicht fuer kontextbezogene Antworten auf Basis von Dokumenten, AAS und Betriebsdaten.","description_md":"## Laufzeit\r\n- Vector Search\r\n- Quellenangabe\r\n- Figure-Kontext ueber RagAnchoringSM","doc_ref":"03_machine_assistant.md#laufzeitlogik","id":"feature.assistant.chat","kind":"feature","menu_icon":"chat","menu_label":"Experten-Chat","parent_id":"menu.assistant","required_roles":"twin_mass_user,twin_mass_editor,twin_mass_developer","route":"/assistant/chat","sort_order":"21","title":"Experten-Chat"},{"description":"Steuert Agentenlaeufe, Retrieval-Jobs und automatisierte Wissensaufbereitung.","description_md":"## Aufgaben\r\n- Agenten starten\r\n- Ingestion triggern\r\n- RAG-Indizes aktualisieren\r\n- Steuerungsregeln verwalten","doc_ref":"00_machine_assistant_concept.md;03_machine_assistant.md","id":"feature.assistant.agent-control","kind":"feature","menu_icon":"tune","menu_label":"Agenten und Steuerung","parent_id":"menu.assistant","required_roles":"twin_mass_editor,twin_mass_developer","route":"/assistant/agents","sort_order":"22","title":"Agenten und Steuerung"},{"description":"Betriebsdaten, Condition Monitoring und Wartungsprozesse.","description_md":"## Bereiche\r\n- Condition Monitoring\r\n- Wartungsplanung\r\n- Zustandsbasierte Wartung","doc_ref":"04_condition_monitoring.md;05_maintenance_planner.md;06_condition_based_maintenance.md","id":"menu.operations","kind":"menu","menu_icon":"build","menu_label":"Betrieb und Wartung","parent_id":"","required_roles":"twin_mass_user,twin_mass_editor,twin_mass_developer","route":"/operations","sort_order":"30","title":"Betrieb und Wartung"},{"description":"Zeigt Sensorik, Zeitreihen, Schwellwerte und Alarme.","description_md":"## Quellen\r\n- TelemetrySM\r\n- Alerts\r\n- Zeitreihen","doc_ref":"04_condition_monitoring.md","id":"feature.operations.condition-monitoring","kind":"feature","menu_icon":"monitor_heart","menu_label":"Condition Monitoring","parent_id":"menu.operations","required_roles":"twin_mass_user,twin_mass_editor,twin_mass_developer","route":"/operations/monitoring","sort_order":"31","title":"Condition Monitoring"},{"description":"Plant zeit- und nutzungsbasierte Wartungsmassnahmen.","description_md":"## Planung\r\n- Zeitbasiert\r\n- Nutzungsbasiert\r\n- Kalendergestuetzt","doc_ref":"05_maintenance_planner.md","id":"feature.operations.maintenance-planner","kind":"feature","menu_icon":"event_note","menu_label":"Wartungsplaner","parent_id":"menu.operations","required_roles":"twin_mass_user,twin_mass_editor,twin_mass_developer","route":"/operations/maintenance-planner","sort_order":"32","title":"Wartungsplaner"},{"description":"Leitet Wartung aus Monitoring, Events und Prognosen ab.","description_md":"## Logik\r\n- Event-basierte Trigger\r\n- Regelwerk\r\n- Prognosemodelle","doc_ref":"06_condition_based_maintenance.md","id":"feature.operations.condition-based-maintenance","kind":"feature","menu_icon":"warning","menu_label":"Zustandsbasierte Wartung","parent_id":"menu.operations","required_roles":"twin_mass_user,twin_mass_editor,twin_mass_developer","route":"/operations/condition-based-maintenance","sort_order":"33","title":"Zustandsbasierte Wartung"},{"description":"Pflege technischer Inhalte vom Basiseditor bis zu erweiterten Workflows.","description_md":"## Bereiche\r\n- Basiseditor\r\n- Erweiterter Editor\r\n- Varianten und Freigaben","doc_ref":"02_basic_editor.md;07_advanced_editor.md","id":"menu.editor","kind":"menu","menu_icon":"edit_note","menu_label":"Redaktion","parent_id":"","required_roles":"twin_mass_editor,twin_mass_developer","route":"/editor","sort_order":"40","title":"Redaktion"},{"description":"Pflegt Inhalte, Versionen und einfache Rollenzuordnungen.","description_md":"## Funktionen\r\n- Inhalte pflegen\r\n- Versionieren\r\n- AAS-Referenzen setzen","doc_ref":"02_basic_editor.md","id":"feature.editor.basic","kind":"feature","menu_icon":"edit","menu_label":"Basiseditor","parent_id":"menu.editor","required_roles":"twin_mass_editor,twin_mass_developer","route":"/editor/basic","sort_order":"41","title":"Basis-Redaktionssystem"},{"description":"Workflows, Mehrsprachigkeit und Variantenmanagement fuer skalierte Dokumentation.","description_md":"## Funktionen\r\n- Freigabe-Workflows\r\n- Mehrsprachigkeit\r\n- Variantenmanagement","doc_ref":"07_advanced_editor.md","id":"feature.editor.advanced","kind":"feature","menu_icon":"schema","menu_label":"Erweiterter Editor","parent_id":"menu.editor","required_roles":"twin_mass_developer","route":"/editor/advanced","sort_order":"42","title":"Erweitertes Redaktionssystem"}],"href":"/apps/twin-mass","icon":"icon_machine_assistant","id":"twin-mass","layout":"default","owner":"twindustrial.de","realm_id":"basyx-002","required_permission":"app.open:twin-mass","required_role":"twin_mass_user","required_roles":"twin_mass_user,twin_mass_editor,twin_mass_developer","show_in_portal":true,"stack_id":"002","status":"Development","summary":"##Maschinen Chatbot\r\nEin produktionsnaher Assistent f\u00fcr konkrete (Linie, Maschine, Komponente), der Ausf\u00fchrung und Nachweis von Arbeitsanweisungen erm\u00f6glicht, relevante Dokumentation mit exaktem Quellenbezug bereitstellt und bei St\u00f6rungen sowie R\u00fcckfragen den aktuellen Betriebszustand, Sensor- und Konfigurationsdaten einbezieht.","tags":[],"title":"M-Assistent","url":"https://twin-mass.twindustrial.xlnetz.de/","version":"1.0"},{"aas_base_url":"https://aas-{STACK_SUFFIX}.{BASE_DOMAIN}","aas_id":"urn:twindustrial.de:aas:platform:twin-bpdata:1","feature_count":15,"features":[{"description":"Hauptmenue im Kopfbereich.","description_md":"## Zweck\r\nStandardisierte Plattformnavigation.","doc_ref":"docs/COMPONENTS.md#ui-flows","id":"menu.top","kind":"menu","menu_icon":"","menu_label":"Top Navigation","parent_id":"","required_roles":"","route":"","sort_order":"001","title":"Top Navigation"},{"description":"Einstieg in die Businesspartner-Verwaltung in twin-bpmain.","description_md":"## Zweck\r\nWeiterleitung zur fachlichen Company-Datenverwaltung.","doc_ref":"","id":"feature.top.bpview","kind":"feature","menu_icon":"","menu_label":"Businesspartner","parent_id":"menu.top","required_roles":"twin_bpdata_user,twin_bpdata_editor,twin_bpdata_developer","route":"/bpview","sort_order":"010","title":"Businesspartner"},{"description":"Pflege-Links und Einladungslaufzeiten.","description_md":"## Zweck\r\nExterne Datenpflege ueber Einladungen steuern.","doc_ref":"docs/COMPONENTS.md#external-care-und-token","id":"feature.top.invitation","kind":"feature","menu_icon":"","menu_label":"Einladung","parent_id":"menu.top","required_roles":"twin_bpdata_editor,twin_bpdata_developer","route":"/invitation","sort_order":"020","title":"Einladung"},{"description":"Mail- und Nachrichtenvorlagen fuer External Care.","description_md":"## Zweck\r\nVorlagen fuer Einladungsmails und Pflegekommunikation.","doc_ref":"docs/COMPONENTS.md#ui-flows","id":"feature.top.pattern","kind":"feature","menu_icon":"","menu_label":"Vorlagen","parent_id":"menu.top","required_roles":"twin_bpdata_editor,twin_bpdata_developer","route":"/pattern","sort_order":"030","title":"Vorlagen"},{"description":"Standardfunktionen fuer technische Einstellungen.","description_md":"## Zweck\r\nTechnische und organisatorische Standardfunktionen.","doc_ref":"","id":"menu.conf","kind":"menu","menu_icon":"icon_settings_tune","menu_label":"Einstellungen","parent_id":"menu.top","required_roles":"twin_bpdata_editor,twin_bpdata_developer","route":"","sort_order":"040","title":"Einstellungen"},{"description":"System- und Dienstestatus.","description_md":"## Zweck\r\nBetriebs- und Systemansicht.","doc_ref":"","id":"feature.conf.systems","kind":"feature","menu_icon":"","menu_label":"Systeme","parent_id":"menu.conf","required_roles":"twin_bpdata_editor,twin_bpdata_developer","route":"/systems","sort_order":"041","title":"Systeme"},{"description":"Keycloak Benutzerverwaltung.","description_md":"## Zweck\r\nBenutzer und Rollen im Realm.","doc_ref":"","id":"feature.conf.users","kind":"feature","menu_icon":"","menu_label":"Benutzer","parent_id":"menu.conf","required_roles":"twin_bpdata_editor,twin_bpdata_developer","route":"https://id.{BASE_DOMAIN}","sort_order":"042","title":"Benutzer"},{"description":"Fehler melden oder Idee teilen.","description_md":"## Zweck\r\nRueckmeldungen und Fehler erfassen.","doc_ref":"","id":"feature.conf.feedback","kind":"feature","menu_icon":"","menu_label":"Feedback","parent_id":"menu.conf","required_roles":"twin_bpdata_user,twin_bpdata_editor,twin_bpdata_admin","route":"action:feedback","sort_order":"043","title":"Feedback"},{"description":"Sprachauswahl im Kopfbereich.","description_md":"","doc_ref":"","id":"feature.top.lang-selector","kind":"lang_selector","menu_icon":"icon_globe","menu_label":"","parent_id":"menu.top","required_roles":"","route":"","sort_order":"050","title":"Sprache"},{"description":"Benutzeranzeige und Logout.","description_md":"","doc_ref":"","id":"feature.top.user-data","kind":"user_data","menu_icon":"","menu_label":"Benutzer","parent_id":"menu.top","required_roles":"","route":"https://id.xlnetz.de/admin/master/console/#/twin-id/users","sort_order":"051","title":"Benutzer"},{"description":"Bereichs-Tabs innerhalb der App-Ansicht.","description_md":"## Zweck\r\nTab-basierte Strukturierung der Hauptbereiche.","doc_ref":"docs/COMPONENTS.md#ui-flows","id":"menu.tab","kind":"menu","menu_icon":"","menu_label":"Tab Navigation","parent_id":"","required_roles":"","route":"","sort_order":"100","title":"Tab Navigation"},{"description":"Neue Einladung erzeugen.","description_md":"## Zweck\r\nTokenisierte Einladung fuer externe Datenpflege anlegen.","doc_ref":"docs/COMPONENTS.md#external-care-und-token","id":"tab.invite-create","kind":"feature","menu_icon":"","menu_label":"Einladung","parent_id":"menu.tab","required_roles":"twin_bpdata_editor,twin_bpdata_developer","route":"/?tab=invite-create","sort_order":"110","title":"Einladung"},{"description":"Einmalige Anzeige von Link und Raw Token.","description_md":"## Zweck\r\nEinmalige Sicht auf den neu erzeugten Pflege-Link.","doc_ref":"docs/COMPONENTS.md#external-care-und-token","id":"tab.invite-result","kind":"feature","menu_icon":"","menu_label":"Pflegelink","parent_id":"menu.tab","required_roles":"twin_bpdata_editor,twin_bpdata_developer","route":"/?tab=invite-result","sort_order":"120","title":"Pflegelink"},{"description":"Liste bestehender Einladungen.","description_md":"## Zweck\r\nStatus, Ablauf und Widerruf bestehender Einladungen.","doc_ref":"docs/COMPONENTS.md#external-care-und-token","id":"tab.invite-history","kind":"feature","menu_icon":"","menu_label":"Historie","parent_id":"menu.tab","required_roles":"twin_bpdata_editor,twin_bpdata_developer","route":"/?tab=invite-history","sort_order":"130","title":"Historie"},{"description":"Laufzeit- und API-Status.","description_md":"## Zweck\r\nTechnischer Betriebsstatus der App.","doc_ref":"docs/COMPONENTS.md#ui-flows","id":"tab.status","kind":"feature","menu_icon":"","menu_label":"Status","parent_id":"menu.tab","required_roles":"twin_bpdata_editor,twin_bpdata_admin","route":"/?tab=status","sort_order":"150","title":"Status"}],"href":"/apps/twin-bpdata","icon":"icon_globe","id":"twin-bpdata","layout":"tabs","owner":"twindustrial.de","realm_id":"basyx-003","required_permission":"app.open:twin-bpdata","required_role":"twin_bpdata_user","required_roles":"twin_bpdata_user,twin_bpdata_editor,twin_bpdata_developer","show_in_portal":true,"stack_id":"003","status":"active","summary":"Einladungs- und External-Care-App fuer Company-Daten mit Token-Links und Mailversand.","tags":[],"title":"Twin BPData","url":"https://twindustrial.xlnetz.de/twin-bpdata","version":"1"},{"aas_base_url":"https://aas-{STACK_SUFFIX}.{BASE_DOMAIN}","aas_id":"urn:twindustrial.de:aas:platform:twin-masch:1.0","feature_count":14,"features":[{"description":"Wurzelknoten fuer die obere Navigation analog twin-app.","description_md":"## Zweck\n- Oberes Navigationsmenue der App.","doc_ref":"docs/PLAN_twin-masch.md","id":"menu.top","kind":"menu","menu_icon":"home","menu_label":"Top Navigation","parent_id":"","required_roles":"","route":"","sort_order":"1","title":"Top Navigation"},{"description":"Wurzelknoten fuer die tab-basierte Maschinenpflege.","description_md":"## Zweck\n- Tabs fuer die Pflege einzelner Maschinen.","doc_ref":"docs/PLAN_twin-masch.md","id":"menu.tab","kind":"menu","menu_icon":"tabs","menu_label":"Maschinen-Tabs","parent_id":"","required_roles":"","route":"","sort_order":"2","title":"Maschinen-Tabs"},{"description":"Hauptmenue fuer Maschinenverwaltung statt App-Verwaltung.","description_md":"## Zweck\n- Maschinenkatalog anzeigen und verwalten.","doc_ref":"docs/PLAN_twin-masch.md","id":"menu.machines","kind":"menu","menu_icon":"precision_manufacturing","menu_label":"Maschinen","parent_id":"feature.top.twin-masch","required_roles":"twin_masch_viewer,twin_masch_operator,twin_masch_admin","route":"/machines","sort_order":"10","title":"Maschinen"},{"description":"AAS-Kopfdaten der Maschine pflegen.","description_md":"## Inhalte\n- AAS ID\n- idShort\n- Beschreibung\n- Asset Kennung","doc_ref":"docs/PLAN_twin-masch.md","id":"feature.machine.tab.kopf","kind":"feature","menu_icon":"badge","menu_label":"Kopfdaten","parent_id":"menu.tab","required_roles":"twin_masch_viewer,twin_masch_operator,twin_masch_admin","route":"?tab=kopf","sort_order":"10","title":"Kopfdaten"},{"description":"Liste aller registrierten Maschinen-AAS mit Filter/Status.","description_md":"## Funktionen\n- Suche\n- Filter\n- Statusansicht","doc_ref":"docs/PLAN_twin-masch.md","id":"feature.machines.catalog","kind":"feature","menu_icon":"view_list","menu_label":"Maschinenkatalog","parent_id":"menu.machines","required_roles":"twin_masch_viewer,twin_masch_operator,twin_masch_admin","route":"/machines/catalog","sort_order":"11","title":"Maschinenkatalog"},{"description":"Erzeugt Maschineninstanzen aus urn:twindustrial.de:aas-template:machine:1.0.","description_md":"## Template\n- urn:twindustrial.de:aas-template:machine:1.0\n\n## Ausgabe\n- neue AAS-Instanz inkl. Submodel-Referenzen","doc_ref":"docs/PLAN_twin-masch.md","id":"feature.machines.create-from-template","kind":"feature","menu_icon":"add_circle","menu_label":"Instanz anlegen","parent_id":"menu.machines","required_roles":"twin_masch_operator,twin_masch_admin","route":"/machines/new","sort_order":"12","title":"Instanz anlegen"},{"description":"Pflege von Betriebsstatus, Lifecycle und Verknuepfungen zu Monitoring/Wartung.","description_md":"## Inhalte\n- Betriebsstatus\n- Lifecycle-Phasen\n- Referenzen auf Betriebs-/Wartungsdaten","doc_ref":"docs/PLAN_twin-masch.md","id":"feature.machines.lifecycle","kind":"feature","menu_icon":"monitor_heart","menu_label":"Betrieb und Zustand","parent_id":"menu.machines","required_roles":"twin_masch_viewer,twin_masch_operator,twin_masch_admin","route":"/machines/lifecycle","sort_order":"13","title":"Betrieb und Zustand"},{"description":"Nameplate-Kernfelder der Maschine pflegen.","description_md":"## Inhalte\n- ManufacturerName\n- ManufacturerProductDesignation\n- SerialNumber\n- YearOfConstruction\n- URIOfTheProduct","doc_ref":"docs/PLAN_twin-masch.md","id":"feature.machine.tab.basis","kind":"feature","menu_icon":"inventory","menu_label":"Basisdaten","parent_id":"menu.tab","required_roles":"twin_masch_viewer,twin_masch_operator,twin_masch_admin","route":"?tab=basis","sort_order":"20","title":"Basisdaten"},{"description":"Oberer Navigationseintrag fuer twin-masch.","description_md":"## Zweck\n- Einstieg in die Maschinenverwaltung.","doc_ref":"docs/PLAN_twin-masch.md","id":"feature.top.twin-masch","kind":"feature","menu_icon":"precision_manufacturing","menu_label":"Maschinenverwaltung","parent_id":"menu.top","required_roles":"twin_masch_viewer,twin_masch_operator,twin_masch_admin","route":"/machines","sort_order":"20","title":"Maschinenverwaltung"},{"description":"Technische Daten und spaetere technische Pflege.","description_md":"## Status\n- In V1 vorbereitet.","doc_ref":"docs/PLAN_twin-masch.md","id":"feature.machine.tab.technik","kind":"feature","menu_icon":"precision_manufacturing","menu_label":"Technik","parent_id":"menu.tab","required_roles":"twin_masch_viewer,twin_masch_operator,twin_masch_admin","route":"?tab=technik","sort_order":"30","title":"Technik"},{"description":"Dokumente, Wissen und spaetere Anker.","description_md":"## Status\n- In V1 vorbereitet.","doc_ref":"docs/PLAN_twin-masch.md","id":"feature.machine.tab.dokumente","kind":"feature","menu_icon":"description","menu_label":"Dokumente","parent_id":"menu.tab","required_roles":"twin_masch_viewer,twin_masch_operator,twin_masch_admin","route":"?tab=dokumente","sort_order":"40","title":"Dokumente"},{"description":"Monitoring, Telemetrie und Zustand.","description_md":"## Status\n- In V1 vorbereitet.","doc_ref":"docs/PLAN_twin-masch.md","id":"feature.machine.tab.monitoring","kind":"feature","menu_icon":"monitor_heart","menu_label":"Monitoring","parent_id":"menu.tab","required_roles":"twin_masch_viewer,twin_masch_operator,twin_masch_admin","route":"?tab=monitoring","sort_order":"50","title":"Monitoring"},{"description":"Gefuehrte Prozesse und prozessnahe Unterstuetzung.","description_md":"## Status\n- In V1 vorbereitet.","doc_ref":"docs/PLAN_twin-masch.md","id":"feature.machine.tab.prozesse","kind":"feature","menu_icon":"list_alt","menu_label":"Prozesse","parent_id":"menu.tab","required_roles":"twin_masch_viewer,twin_masch_operator,twin_masch_admin","route":"?tab=prozesse","sort_order":"60","title":"Prozesse"},{"description":"Konfiguration fuer Templates, Registry und Zugriff.","description_md":"## Inhalte\n- Template-Mapping\n- Registry-Ziele\n- Zugriffsmodell","doc_ref":"docs/PLAN_twin-masch.md","id":"menu.settings","kind":"menu","menu_icon":"settings","menu_label":"Einstellungen","parent_id":"feature.top.twin-masch","required_roles":"twin_masch_admin","route":"/settings","sort_order":"90","title":"Einstellungen"}],"href":"/apps/twin-masch","icon":"icon_machine_manager","id":"twin-masch","layout":"tabs","owner":"twindustrial.de","realm_id":"basyx-002","required_permission":"app.open:twin-masch","required_role":"twin_masch_viewer","required_roles":"twin_masch_viewer, twin_masch_editor","show_in_portal":true,"stack_id":"002","status":"","summary":"Maschinenverwaltung basierend auf AAS-Template-Instanziierung.","tags":[],"title":"Twin Masch","url":"https://twin-masch.twindustrial.de/","version":"1.0"},{"aas_base_url":"https://aas-000.xlnetz.lan","aas_id":"urn:twindustrial.de:aas:platform:twin-modeler:0.0.1","feature_count":26,"features":[{"description":"Haupt Men\u00fc","description_md":"## Zweck\r\nHaupt Men\u00fc mit Navigation zu anderen Programmen","doc_ref":"","id":"menu.top","kind":"menu","menu_icon":"","menu_label":"Top Navigation","parent_id":"","required_roles":"twin_modeler_user,twin_app_user","route":"","sort_order":"001","title":"Top Navigation"},{"description":"Twindustrial App-Portal","description_md":"## Zweck:\r\nAufruf twindustrial Portal","doc_ref":"apps/twin-modeler/README.md","id":"feature.top.portal","kind":"menu","menu_icon":"","menu_label":"Portal","parent_id":"menu.top","required_roles":"twin_modeler_developer,twin_app_developer","route":"https://portal.twindustrial.{BASE_DOMAIN}/","sort_order":"010","title":"Portal"},{"description":"App Konfiguration","description_md":"##Verwalten von Apps\r\n\r\n##Funktionen\r\n- Men\u00fc Definition\r\n- Zuordnung von Rollen\r\n- Konfiguration von Parametern","doc_ref":"","id":"feature.top.twin-app","kind":"feature","menu_icon":"","menu_label":"Twin-App","parent_id":"menu.top","required_roles":"twin_modeler_user,twin_app_user","route":"https://twin-app.twindustrial.{BASE_DOMAIN}","sort_order":"020","title":"Twin-App"},{"description":"AAS Anzeigen und Verwalten","description_md":"## Zweck:\r\nVerwaltung von AAS Objekten\r\n\r\n## Funktionen\r\n- Anzeige von AAS Entit\u00e4ten, Submodellen und Temples\r\n- Struktur Explorer\r\n- AAS Validieren\r\n- Export- und Snycdoisationsfunktion","doc_ref":"","id":"feature.top.twin-modeler","kind":"feature","menu_icon":"","menu_label":"Twin-Modeler","parent_id":"menu.top","required_roles":"twin_app_user,twin_modeler_user","route":"https://twin-modeler.twindustrial.{BASE_DOMAIN}","sort_order":"030","title":"Twin-Modeler"},{"description":"##Zweck\r\n\r\n##Funktionen","description_md":"","doc_ref":"","id":"menu.conf","kind":"feature","menu_icon":"icon_settings_tune","menu_label":"Einstellungen","parent_id":"menu.top","required_roles":"twin_modeler_user,twin_modeler_editor","route":"","sort_order":"040","title":"Einstellungen"},{"description":"Meldung Fehler / Feedback","description_md":"## Anlegen von Fehlermeldungen oder Verbesserungsvorschl\u00e4gen","doc_ref":"","id":"feature.conf.feedback","kind":"feature","menu_icon":"","menu_label":"Feedback","parent_id":"menu.conf","required_roles":"twin_modeler_user,twin_modeler_editor,twin_modeler_developer","route":"action:feedback","sort_order":"044","title":"Feedback"},{"description":"Sprachauswahl","description_md":"","doc_ref":"","id":"Sprachauswahl","kind":"lang_selector","menu_icon":"icon_globe","menu_label":"","parent_id":"menu.top","required_roles":"twin_modeler_user,twin_modeler_editor","route":"","sort_order":"050","title":"Sprachauswahl"},{"description":"Benutzer Info / abmelden","description_md":"","doc_ref":"","id":"benutzer","kind":"user_data","menu_icon":"","menu_label":"Benutzer","parent_id":"menu.top","required_roles":"twin_modeler_user","route":"","sort_order":"051","title":"Benutzer"},{"description":"AAS Modellierung und Syncronisationsfunktoin","description_md":"## Funktion\r\n- Grafische Modellierung der AAS Modelle\r\n- Synchronisation von Modellen","doc_ref":"apps/twin-modeler/README.md","id":"menu.tab","kind":"menu","menu_icon":"","menu_label":"Modeler Tabmen\u00fc","parent_id":"","required_roles":"twin_modeler_developer,twin_modeler_user","route":"/","sort_order":"100","title":"Tab Men\u00fc"},{"description":"## Funktion\r\n- Grafische Modellierung der AAS Modelle","description_md":"","doc_ref":"","id":"menu.tab.modeler","kind":"feature","menu_icon":"","menu_label":"ASS Modeler","parent_id":"menu.tab","required_roles":"twin_modeler_editor,twin_modeler_user","route":"/?tab=modeler","sort_order":"110","title":"ASS Modeler"},{"description":"Verbinden","description_md":"","doc_ref":"","id":"menu.tab.modeler.connect","kind":"feature","menu_icon":"icon_connect","menu_label":"Verbinden","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_editor,twin_modeler_developer","route":"action:modeler.connect","sort_order":"111","title":"Verbinden"},{"description":"Trennen","description_md":"","doc_ref":"","id":"menu.tab.modeler.cut","kind":"feature","menu_icon":"icon_disconnect","menu_label":"Trennen","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_editor,twin_modeler_developer","route":"action:modeler.cut","sort_order":"112","title":"Trennen"},{"description":"Raster","description_md":"","doc_ref":"","id":"menu.tab.modeler.grid","kind":"feature","menu_icon":"","menu_label":"Raster","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_user,twin_modeler_editor,twin_modeler_developer","route":"action:modeler.grid","sort_order":"115","title":"Raster"},{"description":"Auto-Fit","description_md":"","doc_ref":"","id":"menu.tab.modeler.fit","kind":"feature","menu_icon":"","menu_label":"Auto-Fit","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_user,twin_modeler_editor,twin_modeler_developer","route":"action:modeler.fit","sort_order":"120","title":"Auto-Fit"},{"description":"Leeren","description_md":"","doc_ref":"","id":"menu.tab.modeler.clear","kind":"feature","menu_icon":"","menu_label":"Leeren","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_user,twin_modeler_editor,twin_modeler_developer","route":"action:modeler.clear","sort_order":"125","title":"Leeren"},{"description":"Knoten klonen","description_md":"","doc_ref":"","id":"menu.tab.modeler.clone","kind":"feature","menu_icon":"","menu_label":"Knoten klonen","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_editor,twin_modeler_developer","route":"action:modeler.clone","sort_order":"130","title":"Knoten klonen"},{"description":"Aktuelles Modell pruefen","description_md":"","doc_ref":"","id":"menu.tab.modeler.validate","kind":"feature","menu_icon":"icon_scale","menu_label":"Aktuelles Modell pruefen","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_user,twin_modeler_editor,twin_modeler_developer","route":"action:modeler.validate","sort_order":"135","title":"Aktuelles Modell pruefen"},{"description":"AASX Export","description_md":"","doc_ref":"","id":"menu.tab.modeler.export","kind":"feature","menu_icon":"icon_export","menu_label":"AASX Export","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_editor,twin_modeler_admin","route":"action:modeler.export","sort_order":"140","title":"AASX Export"},{"description":"AASX Import","description_md":"","doc_ref":"","id":"menu.tab.modeler.import","kind":"feature","menu_icon":"icon_import","menu_label":"AASX Import","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_editor,twin_modeler_developer","route":"action:modeler.import","sort_order":"141","title":"AASX Import"},{"description":"AAS Modell in Repository schreiben","description_md":"","doc_ref":"","id":"menu.tab.modeler.file_export","kind":"feature","menu_icon":"","menu_label":"Repo Export","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_admin","route":"action:modeler.export_files","sort_order":"143","title":"Repo Export"},{"description":"AAS Modelle aus dem lokalen Repository importieren.","description_md":"","doc_ref":"","id":"menu.tab.modeler.file_import","kind":"feature","menu_icon":"","menu_label":"Repo Import","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_admin","route":"action:modeler.import_files","sort_order":"144","title":"Repo Import"},{"description":"+ Element","description_md":"","doc_ref":"","id":"menu.tab.modeler.add_element","kind":"feature","menu_icon":"icon_element_add","menu_label":"+ Element","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_editor,twin_modeler_developer","route":"action:modeler.add_element","sort_order":"145","title":"+ Element"},{"description":"- Element","description_md":"##Zweck\r\nElement aus dem Model l\u00f6schen.","doc_ref":"","id":"menu.tab.modeler.del_element","kind":"feature","menu_icon":"icon_element_delete","menu_label":"- Element","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_editor,twin_modeler_developer","route":"action:modeler.remove_element","sort_order":"146","title":"L\u00f6schen"},{"description":"Neu laden","description_md":"","doc_ref":"","id":"menu.tab.modeler.refresh","kind":"feature","menu_icon":"icon_reload","menu_label":"Neu laden","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_user,twin_modeler_editor,twin_modeler_developer","route":"action:modeler.refresh","sort_order":"150","title":"Neu laden"},{"description":"Registry-Migration","description_md":"","doc_ref":"","id":"menu.tab.modeler.registry_migration","kind":"feature","menu_icon":"","menu_label":"Registry-Migration","parent_id":"menu.tab.modeler","required_roles":"twin_modeler_admin","route":"action:modeler.registry_migration","sort_order":"155","title":"Registry-Migration"},{"description":"## Funktion\r\n- Synchronisation von Modellen","description_md":"","doc_ref":"","id":"menu.tab.sync","kind":"feature","menu_icon":"","menu_label":"Sync & Transport","parent_id":"menu.tab","required_roles":"twin_modeler_editor","route":"/?tab=sync","sort_order":"200","title":"Sync & Transport"}],"href":"/apps/twin-modeler","icon":"icon_modeler","id":"twin-modeler","layout":"tabs","owner":"twindustrial.de","realm_id":"basyx-000","required_permission":"app.open:twin-modeler","required_role":"twin_modeler_user","required_roles":"twin_modeler_admin","show_in_portal":true,"stack_id":"000","status":"","summary":"Modellierungs-App fuer AAS Templates und Instanzen.","tags":[],"title":"Twin Modeler","url":"https://twin-modeler.twindustrial.xlnetz.lan","version":"0.0.1"},{"aas_base_url":"https://aas-{STACK_SUFFIX}.{BASE_DOMAIN}","aas_id":"urn:twindustrial.de:aas:platform:home-xlnetz:0.0.1","feature_count":17,"features":[{"description":"Startseite mit Live-Energiezustand und Status.","description_md":"## Zweck\r\n- Zentrale Uebersicht fuer Hausenergie, PV und Netzbezug.\r\n\r\n## Inhalt\r\n- Kennzahlen: Verbrauch, PV, Netz, Batterie-SoC.\r\n- Statusindikatoren fuer AAS/Adapter.\r\n\r\n## Quelle\r\n- app/routes.py:get_demo_metrics\r\n- app/templates/dashboard.html","doc_ref":"README.md;app/templates/base.html","id":"menu.dashboard","kind":"menu","menu_icon":"home","menu_label":"Dashboard","parent_id":"","required_roles":"xlnetz_home_user,xlnetz_home_admin","route":"/","sort_order":"10","title":"Dashboard"},{"description":"Men\u00fc Knoten f\u00fcr die Verwaltung von Ger\u00e4ten und R\u00e4umen.","description_md":"## Zweck\r\n- Sammelknoten fuer physische Anlagen und Ladeinfrastruktur.\r\n\r\n## Unterpunkte\r\n- PV-Anlage\r\n- Ladepunkte","doc_ref":"app/templates/base.html","id":"menu.devices","kind":"menu","menu_icon":"devices","menu_label":"Ger\u00e4te & R\u00e4ume","parent_id":"","required_roles":"xlnetz_home_user,xlnetz_home_admin","route":"","sort_order":"20","title":"Ger\u00e4te & R\u00e4ume"},{"description":"SolarEdge Daten, KPI, Inventar und Alarme visualisieren.","description_md":"## Zweck\r\n- Transparenz ueber Erzeugung, Anlagenzustand und Umweltwirkung.\r\n\r\n## Funktionen\r\n- KPI: aktuelle Leistung, Energie heute/Monat/Jahr/Lebenszeit.\r\n- Inventar: Inverter, Optimizer, Zaehler, Batterie.\r\n- Alerts: Site-Status und offene Meldungen.\r\n\r\n## Datenquellen\r\n- PlantInfoSM\r\n- ProductionKPISM\r\n- EnvironmentalBenefitsSM\r\n- EquipmentInventorySM\r\n- AlertsSM","doc_ref":"app/routes.py;app/templates/devices_rooms.html","id":"feature.devices.pv-plant","kind":"feature","menu_icon":"sun","menu_label":"PV-Anlage","parent_id":"menu.devices","required_roles":"xlnetz_home_user,xlnetz_home_admin","route":"/devices","sort_order":"21","title":"PV-Anlage"},{"description":"Ansicht fuer Wallboxen und Ladepunktstatus.","description_md":"## Zweck\r\n- Betriebsansicht fuer Ladepunkte.\r\n\r\n## Quelle\r\n- app/templates/devices_charging_points.html\r\n\r\n## Hinweis\r\n- Fuer historische Ladeenergie ist Easee-Backfill verfuegbar.","doc_ref":"app/templates/devices_charging_points.html;app/easee_konnektor.md","id":"feature.devices.charging-points","kind":"feature","menu_icon":"plug","menu_label":"Ladepunkte","parent_id":"menu.devices","required_roles":"xlnetz_home_user,xlnetz_home_admin","route":"/devices/charging-points","sort_order":"22","title":"Ladepunkte"},{"description":"Strukturknoten f\u00fcr Prognose- und Regel-Funktionen.","description_md":"## Zweck\r\n- Planung und Regelung auf Basis Forecast und Regeln.\r\n\r\n## Unterpunkte\r\n- PV-Vorhersage Model\r\n- PV-Prognose\r\n- Automatisierungsregeln","doc_ref":"README.md;app/templates/base.html","id":"menu.scenarios","kind":"menu","menu_icon":"automation","menu_label":"Szenarien & Automationen","parent_id":"","required_roles":"xlnetz_home_user,xlnetz_home_admin","route":"","sort_order":"30","title":"Szenarien & Automationen"},{"description":"Pflege der Modell- und Quellenparameter fuer PV-Prognosen.","description_md":"## Zweck\r\n- Konfiguriert Site-, PV- und Forecast-Parameter fuer Prognoseberechnung.\r\n\r\n## Felder\r\n- Site/Geokoordinaten/Zeitzone\r\n- Forecast-Zeitaufloesung und Horizonte\r\n- Quellen- und Kalibrierungsdaten","doc_ref":"app/routes.py;app/templates/scenarios_pv_forecast_model.html","id":"feature.scenarios.pv-forecast-model","kind":"feature","menu_icon":"forecast","menu_label":"PV-Vorhersage Model","parent_id":"menu.scenarios","required_roles":"xlnetz_home_admin","route":"/scenarios/pv-forecast-model","sort_order":"31","title":"PV-Vorhersage Model"},{"description":"Visualisiert Forecast-Serien und Vergleich mit Ist-Daten.","description_md":"## Zweck\r\n- Operative Prognoseansicht fuer Erzeugungsplanung.\r\n\r\n## Funktionen\r\n- Laden von Forecast-/Satellite-Serien.\r\n- Fallback aus Influx-Rohdaten.\r\n- Berechnung/Refresh bei fehlenden Serien.","doc_ref":"app/routes.py;app/templates/scenarios_pv_forecast.html","id":"feature.scenarios.pv-forecast","kind":"feature","menu_icon":"forecast","menu_label":"PV-Prognose","parent_id":"menu.scenarios","required_roles":"xlnetz_home_user,xlnetz_home_admin","route":"/scenarios/pv-forecast","sort_order":"32","title":"PV-Prognose"},{"description":"Einbettung Rule-Studio fuer regelbasierte Automationen.","description_md":"## Zweck\r\n- Pflege von Regeln ueber eingebettetes Rule Studio.\r\n\r\n## Zugriff\r\n- Rollen: xlnetz_home_editor oder xlnetz_home_admin.\r\n\r\n## Konfiguration\r\n- RULE_STUDIO_URL\r\n- RULE_STUDIO_CONTEXT","doc_ref":"README.md;app/routes.py;app/templates/scenarios_automation_rules.html","id":"feature.scenarios.automation-rules","kind":"feature","menu_icon":"automation","menu_label":"Automatisierungsregeln","parent_id":"menu.scenarios","required_roles":"xlnetz_home_editor,xlnetz_home_admin","route":"/scenarios/automation-rules","sort_order":"33","title":"Automatisierungsregeln"},{"description":"Prognose Energie-Verbrauch, Batterie und PV","description_md":"## Optimierung der Speichernutzung\r\nAnhand des erwarteten Stromverbrauchs und PV Ertrag soll die Nutzung der Batterie optimiert werden. \r\n- deaktivierung, wenn Auto geladen wird.\r\n- deaktivierung, wenn Strompreis niedrig und in Zukunft sehr hoch","doc_ref":"","id":"feature.scenarios.energy-forecast","kind":"feature","menu_icon":"forecast","menu_label":"Energie-Prognose","parent_id":"menu.scenarios","required_roles":"xlnetz_home_user","route":"main.scenarios_energy_forecast","sort_order":"34","title":"Energie-Prognose"},{"description":"Strukturknoten fuer Preis- und Verbrauchsanalysen.","description_md":"## Zweck\r\n- Transparenz ueber Preise, Lasten und Verbrauchsmuster.\r\n\r\n## Unterpunkte\r\n- Preisuebersicht\r\n- Verbrauchsuebersicht","doc_ref":"app/templates/base.html","id":"menu.energy","kind":"menu","menu_icon":"energy","menu_label":"Energie & Tarife","parent_id":"","required_roles":"xlnetz_home_user,xlnetz_home_admin","route":"","sort_order":"40","title":"Energie & Tarife"},{"description":"Zeitliche Preisentwicklung fuer Tarif-/Ladeentscheidungen.","description_md":"## Zweck\r\n- Visualisierung von Energiepreisen zur Optimierung von Lasten.\r\n\r\n## API-Bezug\r\n- /api/energy/prices/history","doc_ref":"app/templates/energy_prices.html;app/api.py","id":"feature.energy.prices","kind":"feature","menu_icon":"energy","menu_label":"Preisuebersicht","parent_id":"menu.energy","required_roles":"xlnetz_home_user,xlnetz_home_admin","route":"/energy/prices","sort_order":"41","title":"Preisuebersicht"},{"description":"Lastprofil-Analyse mit Tages- und Wochenmustern.","description_md":"## Zweck\r\n- Analyse des Energieverbrauchs fuer Optimierung und Monitoring.\r\n\r\n## API-Bezug\r\n- /api/energy/consumption/daily\r\n- /api/energy/consumption/weekday-hourly","doc_ref":"app/templates/energy_consumption.html;app/api.py","id":"feature.energy.consumption","kind":"feature","menu_icon":"plug","menu_label":"Verbrauchsuebersicht","parent_id":"menu.energy","required_roles":"xlnetz_home_user,xlnetz_home_admin","route":"/energy/consumption","sort_order":"42","title":"Verbrauchsuebersicht"},{"description":"Admin-Strukturknoten f\u00fcr Stammdaten und Adapter.","description_md":"## Zweck\r\n- Administrativer Bereich fuer Systemkonfiguration.\r\n\r\n## Unterpunkte\r\n- Haus-Info\r\n- Adapter","doc_ref":"app/templates/base.html","id":"menu.settings","kind":"menu","menu_icon":"settings","menu_label":"Einstellungen","parent_id":"","required_roles":"xlnetz_home_admin","route":"","sort_order":"50","title":"Einstellungen"},{"description":"Pflege von Gebaeude-, Standort- und Zeitzonenstammdaten.","description_md":"## Zweck\r\n- Stammdaten fuer Hauskontext und Standort pflegen.\r\n\r\n## Wirkung\r\n- Beeinflusst Zeitzonen- und Kontextauflosung im Dashboard.","doc_ref":"app/routes.py;app/templates/settings_house_info.html","id":"feature.settings.house-info","kind":"feature","menu_icon":"home","menu_label":"Haus-Info","parent_id":"menu.settings","required_roles":"xlnetz_home_admin","route":"/settings/house-info","sort_order":"51","title":"Haus-Info"},{"description":"Connector-Verwaltung f\u00fcr Datenquellen und Polling.","description_md":"## Zweck\r\n- Pflege von ConnectorConfigSM-Adaptereintraegen.\r\n\r\n## Funktionen\r\n- Adapter anlegen/bearbeiten/loeschen.\r\n- Polling-/Auth-/Endpoint-Konfiguration.\r\n- Logansicht ueber Adapterlauf.","doc_ref":"AGENTS.md; app/routes.py; app/templates/settings_adapters*.html","id":"feature.settings.adapters","kind":"feature","menu_icon":"plug","menu_label":"Adapter","parent_id":"menu.settings","required_roles":"xlnetz_home_admin","route":"/settings/adapters","sort_order":"52","title":"Adapter"},{"description":"LLM-gestuetzte Erstellung Optimierungsstrategien","description_md":"## Zweck\r\n- Neue Adapterdefinitionen per LLM entwerfen und als ConnectorConfigSM-Eintrag speichern.\r\n\r\n## Funktionen\r\n- Promptbasierten Vorschlag erzeugen.\r\n- JSON pruefen und als neuen Adapter speichern.","doc_ref":"app/routes.py; app/api.py; app/templates/settings_adapters_llm.html","id":"feature.settings.adapters.llm","kind":"feature","menu_icon":"automation","menu_label":"LM Batterie Optimierung","parent_id":"menu.settings","required_roles":"xlnetz_home_admin","route":"/settings/adapters/llm","sort_order":"53","title":"Batterie LM Optimierung"},{"description":"Anzeige AAS Entit\u00e4ten","description_md":"","doc_ref":"","id":"aas-viewer","kind":"feature","menu_icon":"","menu_label":"AAS - Viewer","parent_id":"menu.settings","required_roles":"xlnetz_home_admin","route":"https://aas-ui.{BASE_DOMAIN}","sort_order":"55","title":"AAS-Viewer"}],"href":"/apps/home-xlnetz","icon":"icon_home","id":"home-xlnetz","layout":"dashboard","owner":"xlnetz.de","realm_id":"basyx-001","required_permission":"app.open:home-xlnetz","required_role":"xlnetz_home_user","required_roles":"xlnetz_home_user,xlnetz_home_admin","show_in_portal":true,"stack_id":"001","status":"Released 1.26","summary":"Heimsteuerung und Energiemanagement\r\nTestanwendung f\u00fcr Entwicklungssystem.","tags":[],"title":"xlnetz-home","url":"https://home.xlnetz.de/","version":"0.0.1"}]
