# Projekte

Übertragen Sie Projektfakten, Entscheidungen und Übergabenotizen über freigegebene Clients hinweg, ohne sie zwischen Chats kopieren zu müssen.

- Canonical: https://docs.xmemo.dev/de/docs/concepts/projects
- Locale: de-DE
- Content-Locale: de-DE
- Canonical-Content-Digest: e82c162591e96921f73cb208323c4238c42240cf414ab2fbfcb253a4c872a206
- Edition-Digest: 61b16377fb798e1d81464d3a41d17b3c1b5772c6bdd2d24dd59608f89e1d6c35
- Source-Revision: sha256:d8d00f958675bca9a3263744deaa85017c659638f29847b5dc3b83ba37f78fc5

## Projektarbeitsbereiche in der Memory Console

Projektarbeitsbereiche bieten strukturierte kontextbezogene Grenzen zur Gruppierung von Erinnerungen, zur Verfolgung operativer Entscheidungen und zur Verwaltung aktiver Aufgaben über Client-Sitzungen hinweg. In der Memory Console unter https://xmemo.dev/me#projects hostet der Navigationsbereich des Arbeitsbereichs das Projektpanel, das dafür konzipiert ist, "Browse project workspaces, context, and project memories." bereitzustellen.

- Arbeitsbereichsmetriken: Die Konsole zeigt übergeordnete Statistiken über Ihre Arbeitsbereiche hinweg an, darunter Total Projects, Active, Attention Needed und Archived.
- Bereitstellung von Arbeitsbereichen: Durch Auswahl von Create New Project wird ein geführtes modales Fenster geöffnet, das einen Project Name erfordert ("Required, 1-128 characters."). Die Benutzeroberfläche rendert eine Echtzeit-Vorschau des Projektbezeichners ("Non-authoritative preview. The backend server assigns the authoritative project key.") und akzeptiert eine optionale Description von bis zu 2000 Zeichen.
- Persönliche Grenze: Projekte sind derzeit ausschließlich persönlich. Der Backend-Dienst lehnt die Erstellung von Arbeitsbereichen mit team_id ab (HTTP 400). Die Dokumentation enthält kein Versprechen für Team-Projekte.
- Keine numerischen Begrenzungen: Projektarbeitsbereiche unterliegen keinen numerischen Plankontingenten oder künstlichen Erstellungsobergrenzen. Konten stellen Arbeitsbereiche basierend auf den Anforderungen des Workflows und nicht anhand von Plankontingenten bereit.

## Gedächtniszuordnungen, Lebenszyklusstatus und zerstörungsfreie Entfernung

Erinnerungen werden einem Projekt zugewiesen, um verbundenen Agenten und Dashboard-Überprüfungen einen bereichsbezogenen Kontext bereitzustellen. Die Projektdetailansicht aggregiert Projektintegritätsmetriken und ermöglicht eine feingranulare Inspektion verknüpfter Datensätze:

- Projekt-Hero-Statistiken: Jede Arbeitsbereichs-Hero-Leiste hebt Live-Aggregate für Memories:, Open TODOs: und Decisions: hervor.
- Filterung nach Gedächtnislebenszyklus: Der Memory Explorer kategorisiert Datensätze nach Lebenszyklusstatus: Active, Superseded, Expired und Archived.
- Zerstörungsfreie Aufhebung der Zuordnung: Das Entfernen eines Speicherdatensatzes aus einem Projektarbeitsbereich hebt die Verknüpfung auf, ohne den zugrunde liegenden Speicher zu zerstören. Der Bestätigungsdialog bekräftigt: "This memory will be disassociated from this project workspace. The memory content remains in your personal memory archive, but will no longer appear in this project context."
- Diagnostische Isolation: Elemente mit fehlenden kanonischen Referenzen oder Namespace-Konflikten werden unter Diagnostic Isolated Items mit dem Badge Unindexed - Troubleshooting Only unter Quarantäne gestellt, um zu verhindern, dass beschädigter Kontext in den Agenten-Recall gelangt.

## Knowledge- vs. Working-Partitionen und die Ansicht Attention Needed

Projektarbeitsbereiche unterstützen die kontextbezogene Gedächtnispartitionierung, sofern für Ihr Konto aktiviert (der Konvergenz-Evaluierungsmodus ist standardmäßig deaktiviert):

- Knowledge-Partition: Enthält dauerhafte Referenzfakten, langfristige Architekturentscheidungen und Projektkonventionen, die für den persistenten Abruf vorgesehen sind.
- Working-Memory-Partition: Enthält flüchtigen Aufgabenstatus, laufende Arbeitssitzungen und Notizblock-Kontext, die nach Abschluss eines Meilensteins verworfen werden können.
- Ansicht Attention Needed: Hebt nicht zugewiesene Kandidaten, mutmaßliche Duplikate oder Datensätze mit ausstehender Zuordnung hervor, wenn die partitionierte Kuration für Ihr Konto aktiv ist.
- Unterschied zu Wissensbasen: Eine Knowledge-Partition eines Projekts kategorisiert episodische Dialogerinnerungen innerhalb einer Projektgrenze. Im Gegensatz dazu stellt eine Wissensbasis kuratierte Referenzdokumente mit mehreren Revisionen bereit, die über einen unabhängigen Speicher verwaltet werden. Informationen zu kuratierter Dokumentation finden Sie im Leitfaden zu Wissensbasen unter /docs/concepts/knowledge-bases.

## Ein Projekt ist ein Scope plus eine Pfadkonvention

Für die grundlegende Eingrenzung des Gedächtnisses benötigt XMemo kein separates Projektobjekt: Ein Projekt wird durch den Scope, unter dem eine Erinnerung geschrieben wird, und den logischen Pfad-Namespace darin ausgedrückt, sodass dasselbe Konto viele Projekte ohne wechselseitige Verunreinigung führen kann. Auf dieser Gedächtnisgrenze baut Project Workspaces strukturierten Projektstatus (Project API, TODO-Tracking und aufgezeichnete Entscheidungen) für die clientübergreifende Zusammenarbeit auf.

- Schreiben Sie Projektfakten unter einen stabilen Pfad wie projects/<name>/decisions.
- Übergeben Sie den Projektbereich sowohl beim Schreiben als auch beim Lesen, damit der Abruf begrenzt bleibt.
- Project Workspaces schichtet strukturierten Projektstatus – einschließlich Projekt-APIs, dauerhaften TODOs und aufgezeichneten Entscheidungen – über die zugrunde liegende Gedächtnisgrenze.
- Projekte bleiben derzeit ausschließlich persönlich; teambezogene Projektarbeitsbereiche werden von der API abgewiesen.

## Eine Projektentscheidung schreiben

Hängen Sie den Datensatz beim Schreiben an den Projektpfad und den Bereich an; nichts anderes muss vorher konfiguriert werden.

```ts
await client.recordDecision(
  "Remote agents should use network MCP, not SSH stdio",
  { source: "codex", scope: "memory-os" },
);
```

## Ein Projekt in einem anderen Client fortsetzen

Ein zweiter Client ruft denselben Scope ab und erhält den Projektkontext zurück, ohne dass der Benutzer ihn erneut erklären muss.

```ts
const context = await client.recallContext("recent agent integration progress", {
  scope: "memory-os",
  maxItems: 6,
  maxTokens: 1200,
});
```

## Agentenwerkzeuge und Zugriff auf Client-Profile

Autorisierte Agenten interagieren mit Projekten über Tools, die in config/mcp-documentation-contract.json über bestimmte Client-Profile hinweg definiert sind:

- chatgpt-public, generic-public und public-only: Legen project, get_project_summary und open_project_workspace offen.
- claude-plugin: Legt project und get_project_context offen.
- cursor-plugin und ordinary-full: Legen get_project_context, update_project_todo und update_project_decision offen.
- Unterschied beim In-Chat-Widget: Das über open_project_workspace geöffnete ChatGPT Project Workspace-Widget ist eine interaktive kartenbasierte In-Chat-Oberfläche; es unterscheidet sich von der vollständigen webbasierten Memory Console unter https://xmemo.dev/me#projects.

## ChatGPT-Benutzer

Geben Sie ChatGPT dauerhaften Zugriff auf Ihre XMemo-Präferenzen, Projektfakten, Entscheidungen und TODOs, ohne Bearer-Token in einen Chat einzufügen.

Verbinden Sie den gehosteten XMemo-MCP-Server über den OAuth-Ablauf der ChatGPT-/OpenAI-App und genehmigen Sie anschließend die Berechtigungen memory:read und memory:write für Ihr XMemo-Konto.

Speichern Sie eine synthetische Präferenz oder Projektnotiz, starten Sie einen neuen Chat und fordern Sie ChatGPT auf, diese vor der Fortsetzung der Arbeit über XMemo abzurufen.

Wenn OAuth fehlschlägt oder Tools nicht angezeigt werden, melden Sie sich in der Host-App vom MCP-Server ab, verbinden Sie die XMemo-Server-URL erneut und versuchen Sie es noch einmal, bevor Sie direkte Token erstellen.

## Copilot- / Codex-Entwickler

Übertragen Sie Repository-Entscheidungen, Programmierkonventionen, Bugfix-Notizen und den Aufgabenverlauf zwischen IDE- und CLI-Agenten.

Verwenden Sie OAuth für VS Code / GitHub Copilot und Gemini CLI, sofern verfügbar. Behalten Sie für Copilot CLI, Codex, Cursor oder andere direkte MCP-Clients XMEMO_KEY in der lokalen Umgebung oder im Secret-Store und setzen Sie eine stabile XMEMO_AGENT_INSTANCE_ID.

Erfassen Sie eine Codebasis-Entscheidung oder einen Bugfix und fordern Sie den nächsten IDE- oder CLI-Agenten auf, den relevanten XMemo-Kontext vor dem Bearbeiten abzurufen.

Wenn Abrufe leer bleiben, überprüfen Sie den ausgewählten MCP-Konfigurationspfad, die Umgebungsvariable XMEMO_KEY für direkte Clients und veraltete OAuth-Anmeldedaten in der Host-App.

## Verantwortlicher für Team- / Enterprise-Pilotprojekte

Evaluieren Sie geteilten Speicher mit Kontokontrollen, Quellenzuordnung, Export-/Lösch-Workflows und prüfersicheren Einrichtungsnachweisen.

Erstellen oder betreten Sie den geschützten XMemo-Arbeitsbereich, laden Sie freigegebene Benutzer ein und verbinden Sie jeden Client über OAuth oder bereichsbezogene direkte Anmeldedaten gemäß den Bereitschafts-Badges.

Lassen Sie ein Mitglied des Pilotprojekts eine synthetische Team-Erinnerung speichern, bestätigen Sie die Quellenzuordnung in XMemo und prüfen Sie anschließend Lösch-/Export- sowie Support-Pfade.

Wenn ein Mitglied keine Verbindung herstellen kann, prüfen Sie Rollenberechtigungen, OAuth-Genehmigung, Client-Bereitschaftsstatus und Support-Hinweise, bevor Sie ein neues Token ausstellen.

## Betreiber autonomer Agenten

Ermöglichen Sie es Headless- oder zeitgesteuerten Agenten, Fortschritte aufzuzeichnen, frühere Entscheidungen abzurufen und eine stabile, nicht-geheime Instanzidentität beizubehalten.

Rufen Sie /api/v1/mcp/config/autonomous-agent ab. Bevorzugen Sie auth_modes.oauth, wenn der Runner OAuth + benutzerdefinierte Header unterstützt; verwenden Sie auth_modes.xmemo_key mit XMEMO_KEY aus einem Secret-Store nur für vollständig autonome Headless-Runner.

Führen Sie eine synthetische Aufgabe aus, die den Fortschritt in XMemo schreibt, starten Sie den Runner neu und bestätigen Sie, dass er diesen Fortschritt unter Verwendung derselben XMEMO_AGENT_INSTANCE_ID abruft.

Wenn sich die Zuordnung ändert oder Abrufe über Instanzen hinweg aufgeteilt werden, speichern Sie XMEMO_AGENT_INSTANCE_ID außerhalb von Git und stellen Sie sicher, dass der Runner diese nicht bei jedem Start neu generiert.
