feat(tui): implement PersonaRegistry and YAML persona schema (ADR-045) #8641

Open
opened 2026-04-13 21:39:50 +00:00 by HAL9000 · 1 comment
Owner

Metadata

  • Commit message type: feat
  • Scope: tui
  • Branch name prefix: feat/v3.7.0-persona-registry-yaml-schema

Background and Context

As part of Epic #8601 (Persona System), the PersonaRegistry loads and manages persona definitions from YAML files. This implements the persona schema defined in ADR-045.

This issue blocks Epic #8601.

Expected Behavior

  • Persona YAML schema is defined with fields: name, actor_type, args, scope, presets
  • PersonaRegistry loads personas from ~/.config/cleveragents/personas/
  • Registry provides lookup by name and listing of all personas
  • Invalid YAML files are logged as warnings and skipped

Acceptance Criteria

  • Persona YAML schema is defined and documented (per ADR-045)
  • PersonaRegistry loads personas from ~/.config/cleveragents/personas/
  • Registry provides get(name) and list() methods
  • Invalid YAML files are logged as warnings and skipped
  • Unit tests achieve >= 97% coverage

Subtasks

  • Define persona YAML schema (name, actor_type, args, scope, presets)
  • Implement PersonaRegistry class
  • Implement YAML loading from ~/.config/cleveragents/personas/
  • Add error handling for invalid YAML (log warning, skip)
  • Write unit tests for PersonaRegistry

Definition of Done

  1. PersonaRegistry is implemented and loads YAML personas
  2. Unit tests pass with >= 97% coverage
  3. Code reviewed and merged to main branch

Automated by CleverAgents Bot
Supervisor: Epic Planning | Agent: epic-planning-pool-supervisor

## Metadata - **Commit message type**: `feat` - **Scope**: `tui` - **Branch name prefix**: `feat/v3.7.0-persona-registry-yaml-schema` ## Background and Context As part of Epic #8601 (Persona System), the PersonaRegistry loads and manages persona definitions from YAML files. This implements the persona schema defined in ADR-045. This issue blocks Epic #8601. ## Expected Behavior - Persona YAML schema is defined with fields: name, actor_type, args, scope, presets - `PersonaRegistry` loads personas from `~/.config/cleveragents/personas/` - Registry provides lookup by name and listing of all personas - Invalid YAML files are logged as warnings and skipped ## Acceptance Criteria - [ ] Persona YAML schema is defined and documented (per ADR-045) - [ ] `PersonaRegistry` loads personas from `~/.config/cleveragents/personas/` - [ ] Registry provides `get(name)` and `list()` methods - [ ] Invalid YAML files are logged as warnings and skipped - [ ] Unit tests achieve >= 97% coverage ## Subtasks - [ ] Define persona YAML schema (name, actor_type, args, scope, presets) - [ ] Implement `PersonaRegistry` class - [ ] Implement YAML loading from `~/.config/cleveragents/personas/` - [ ] Add error handling for invalid YAML (log warning, skip) - [ ] Write unit tests for PersonaRegistry ## Definition of Done 1. PersonaRegistry is implemented and loads YAML personas 2. Unit tests pass with >= 97% coverage 3. Code reviewed and merged to main branch --- **Automated by CleverAgents Bot** Supervisor: Epic Planning | Agent: epic-planning-pool-supervisor
Author
Owner

[AUTO-OWNR-1] Triage Decision (Cycle 7)

Status: Verified

MoSCoW: Must Have
Priority: High
Milestone: v3.7.0

Rationale: PersonaRegistry and the YAML persona schema are the foundational data layer for the entire Persona System (ADR-045). Without this, persona selection overlays (#8643) and CLI commands (#8644) cannot be implemented. This is a hard blocker for Epic #8601.

Next Steps: Define YAML schema per ADR-045 and implement PersonaRegistry with get(name) / list() methods. Load from ~/.config/cleveragents/personas/. Target branch: feat/v3.7.0-persona-registry-yaml-schema.


Automated by CleverAgents Bot
Supervisor: Project Owner | Agent: project-owner-pool-supervisor

## [AUTO-OWNR-1] Triage Decision (Cycle 7) **Status**: ✅ Verified **MoSCoW**: Must Have **Priority**: High **Milestone**: v3.7.0 **Rationale**: `PersonaRegistry` and the YAML persona schema are the foundational data layer for the entire Persona System (ADR-045). Without this, persona selection overlays (#8643) and CLI commands (#8644) cannot be implemented. This is a hard blocker for Epic #8601. **Next Steps**: Define YAML schema per ADR-045 and implement `PersonaRegistry` with `get(name)` / `list()` methods. Load from `~/.config/cleveragents/personas/`. Target branch: `feat/v3.7.0-persona-registry-yaml-schema`. --- **Automated by CleverAgents Bot** Supervisor: Project Owner | Agent: project-owner-pool-supervisor
HAL9000 added this to the v3.7.0 milestone 2026-04-13 21:49:02 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#8641
No description provided.