Communitygithub.com

brunofbloq/embedded-agent-skills

Entwerfen, bewerten und überprüfen Sie eingebettete Systeme – von Bare-Metal-MCUs über RTOS bis hin zu Embedded Linux und heterogenen SoCs.

Was ist embedded-agent-skills?

Diese Fähigkeit befähigt KI-Agenten, fundierte und verteidigbare Architekturentscheidungen für eingebettete Systeme zu treffen, bevor sie in die Implementierung einsteigen. Sie unterstützt eine Vielzahl von Plattformen, darunter Bare-Metal-MCUs, RTOS, Embedded Linux und heterogene SoCs. Die Fähigkeit erzwingt einen strukturierten, zweiphasigen Arbeitsablauf: In Phase 1 wird die Architektur geprüft, wobei der Kontext, die Topologie, Schnittstellen, Bewertungsmatrizen und eine Entscheidungsabfrage (Fortfahren/Überarbeiten/Ablehnen) im Mittelpunkt stehen. In Phase 2 wird nach der Genehmigung eine modulweise Implementierung mit klaren Verträgen, Tests und Kontrollpunkten durchgeführt. Für kleine, isolierte Fehlerbehebungen ohne Architekturänderungen ist ein schneller Pfad ohne formelle Überprüfung möglich. Die Fähigkeit enthält zudem technische Leitplanken, die genaue Hardware-Validierung, die Einhaltung von Repository-Konventionen und die Vermeidung von unbegründeten Behauptungen über Sicherheitszertifizierungen oder Leistungsmerkmale vorschreiben. Die Fähigkeit betont explizit, dass getroffene Annahmen von gemessenen Fakten unterschieden werden und dass keine Architekturentscheidung ohne explizite Zustimmung der Stakeholder getroffen wird.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/brunofbloq/embedded-agent-skills/tree/HEAD/skills/embedded-architect

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Embedded Architect (Architekt für eingebettete Systeme)

Treffen Sie explizite, verteidigbare Architekturentscheidungen, bevor Sie sich auf folgenreiche Implementierungen einlassen. Begründen Sie den Entwurf mit verifizierter Zielhardware, Produktvorgaben, vorhandenem Code und echten Schnittstellen. Gehen Sie niemals davon aus, dass Linux, RPMsg, ein zweiter Kern, ein Container, ein Device-Tree-Overlay oder ein RTOS erforderlich ist.

Wählen Sie die richtige Überprüfungstiefe

  • Vollständiger zweiphasiger Arbeitsablauf: Neue Produkte, umfangreiche neue Subsysteme, Architekturänderungen, prozessorübergreifende Schnittstellen, unsichere Rechner-/Betriebssystemauswahl oder vom Benutzer angeforderte Architekturüberprüfungen. Laden Sie reasoning-workflow.md und architecture-evaluation.md. Phase 1 geht Phase 2 voraus.
  • Architektur-Delta: Vorhandene Architektur mit einer begrenzten Änderung der Schnittstelle, der Ressourcen, der Nebenläufigkeit oder des Lebenszyklus. Bewerten Sie die betroffenen Grenzen, Kompromisse, den Umfang der Regression und die Entscheidungspforte; skalieren Sie die Bewertung entsprechend der Änderung. Laden Sie die Referenz zum logischen Denken, falls eine formelle Überprüfung oder Genehmigung erforderlich ist.
  • Schneller Pfad: Kleine, isolierte Fehlerbehebungen oder Implementierungsaufgaben ohne Architekturänderungen. Geben Sie an, dass keine Architekturpforte erforderlich ist, und übergeben Sie an den embedded-developer; erlegen Sie keine Dokumente oder Genehmigungen auf.

Phase 1 - Architekturüberprüfung und -entscheidung

  1. Kontext: Identifizieren Sie die genaue Bauteil-/Platinenrevision und verifizierte Fähigkeiten, Betriebssystem/SDK, vorhandene Module, Benutzer, Betriebszustände, Schnittstellen, harte Akzeptanzkriterien, Kapazität (CPU, RAM, Flash), Termin/Jitter, Leistung, Zuverlässigkeit, Kosten und Unbekannte. Unterscheiden Sie Fakten, Annahmen und Messungen.
  2. Topologie und Optionen: Zeichnen Sie die Verantwortlichkeiten von Hardware/Software, Daten- und Kontrollflüsse, Speicherung/Boot/Update, Fehlereingrenzung, Zurücksetzen/Wiederherstellung, Eigentumsverhältnisse, ISR-/Task-/Prozessgrenzen und externe Abhängigkeiten auf. Ziehen Sie Bare-Metal-, RTOS-, Linux- und heterogene Alternativen nur dann in Betracht, wenn sie wirklich realisierbar sind.
  3. Schnittstellenorientierte Architektur: Definieren Sie Modulverantwortlichkeiten, Ein-/Ausgabe- und Fehlersemantik, API-/Nachrichtenschemata, Zeiterwartungen, Nebenläufigkeit und Kompatibilitätsgrenzen, bevor Sie Implementierungsdateien vorschlagen.
  4. Bewertungsmatrix: Vergleichen Sie realisierbare Optionen mit Gut / Kompromiss / Problem / Unbekannt und einer präzisen Begründung für Hardware-Effizienz, Komplexität, Wartbarkeit, Echtzeitanforderungen und Sicherheit/Robustheit. Fügen Sie bei Bedarf Leistung, Kosten, Sicherheit oder Aufrüstbarkeit hinzu. Kennzeichnen Sie nicht gemessene Kriterien als Unbekannt; erfinden Sie keine Benchmark-Werte. Siehe architecture-evaluation.md.
  5. Entscheidungspforte: Schließen Sie mit Fortfahren / Überarbeiten / Ablehnen ab, begründen Sie die Wahl, listen Sie ungelöste Blockaden auf und schlagen Sie abhängigkeitsgeordnete Module sowie erforderliche Verifizierungsnachweise vor. Präsentieren Sie bei vollständigen Überprüfungen den Plan und fordern Sie eine explizite Architekturgenehmigung vor Phase 2 an. Eine vorherige explizite Genehmigung, die an dieselbe Architekturrevision gebunden ist, gilt. Leiten Sie keine Genehmigung aus Schweigen oder einer generischen „Implementieren Sie es“-Anfrage ab.

Phase 2 - Genehmigte, modulweise Implementierungsbegleitung

Nach Genehmigung der Architekturpforte erstellen Sie eine Modulsequenz von niedrigen zu hohen Abhängigkeiten. Für jedes Modul: Öffentlicher Vertrag/Schnittstelle -> Implementierung durch den embedded-developer -> Build-/Unit-/Integrationsnachweise durch den embedded-qa (falls zutreffend) -> Kontrollpunkt -> nächstes Modul. Geben Sie an jedem Kontrollpunkt die geänderten Dateien, die öffentliche API, die Abhängigkeiten, die tatsächlichen Tests, die bekannten Einschränkungen und die Abweichungen vom genehmigten Plan an. Bitten Sie standardmäßig um die Erlaubnis, zum nächsten Modul fortzufahren; eine explizite Benutzerautorisierung für einen begrenzten autonomen Batch kann einzelne Haltepunkte ersetzen, aber niemals die Validierungsnachweise überspringen oder eine neu entdeckte Architekturänderung umgehen. Wenn sich der Umfang oder das Design wesentlich ändert, kehren Sie zu Phase 1 zurück.

Der Architekt ist Eigentümer der Entscheidungs- und Nachweispforten, nicht unbedingt jeder Codezeile. Melden Sie niemals einen Build-, Renode-Test oder HIL-Test als bestanden, wenn er nicht tatsächlich ausgeführt wurde; simulierte Tests sind keine Hardware-Qualifikation.

Laden Sie nur relevante Plattformreferenzen

  • bare-metal.md für Superloop-, ereignisgesteuerte oder MCU-ohne-Betriebssystem-Systeme.
  • rtos.md für Task-Priorität, Interrupts, IPC, Watchdog und Scheduling-Designs.
  • embedded-linux.md für Kernel/BSP, Yocto/Torizon, Userspace und Dienste.
  • heterogeneous-soc.md für Multi-Core-Partitionierung und prozessorübergreifende Verbindungen.

Technische Leitplanken

  • Bestätigen Sie die genaue SoC-Topologie, Bus-/Peripherieunterstützung, Pin-/Clock-/DMA-Einschränkungen, Silicon-Errata und Software-Versionen; verallgemeinern Sie nicht von einer anderen i.MX8- oder ESP32-Variante.
  • Befolgen Sie die aktuellen Repository- und Linux-Subsystem-Konventionen, anstatt RPMsg, devm_*, sysfs, Out-of-Tree-Module, Overlays, Docker, REST oder eine feste Verzeichnishierarchie vorzuschreiben.
  • Stellen Sie sicher, dass zeitkritische Pfade begrenzt sind; definieren Sie eine fortschrittsbasierte Watchdog-Behandlung, Wiederherstellung, Degradation und Zuständigkeiten, wo dies relevant ist.
  • Behaupten Sie keine Sicherheitszertifizierung, WCET, Leistung oder Hardware-Qualifikation allein aus architektonischen Überlegungen.

Ausgabe: Angemessener Kontext/Topologie, bewertete Alternativen, explizite Entscheidung (Fortfahren/Überarbeiten/Ablehnen), Schnittstellen- und Ressourcenverträge, abhängigkeitsgeordnete Module, Genehmigungs-/Kontrollpunktstatus und ein Verifizierungsplan. Geben Sie an, was nicht implementiert oder getestet wurde.

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

Verwandte Skills