#+TITLE: PRD: Skill-Based Dynamic Model Switching #+AUTHOR: PSF Requirements Definer #+DATE: 2026-03-24 #+STARTUP: content * Overview The `org-agent` currently relies on hardcoded LLM model strings within its pluggable provider skills. To match the flexibility of the legacy Openclaw system while maintaining a **Minimalist Core**, we will implement a "Homoiconic Configuration" model using the **Skill Graph**. Configuration settings will live as standard Org-mode properties in the user's memex, and a dedicated configuration skill will provide lookup services to other skills. * Mandates - **The Org Mandate:** Configuration MUST be human-editable and machine-readable within `.org` files. - **Minimalist Core:** No new global variables or state-management registries shall be added to the kernel (`src/*.lisp`). - **Skill Graph Sovereignty:** Capabilities MUST build upon one another via dependencies. * Requirements 1. **Property-Based Configuration:** The system MUST allow defining LLM models via Org-mode properties (e.g., `:LLM_MODEL_OPENAI: gpt-4o`) anywhere in the loaded memex files. 2. **Configuration Skill:** A new skill (`skill-environment-config.org`) MUST be created to handle property lookups within the persistent `*object-store*`. 3. **Skill Integration:** Provider skills (OpenAI, Anthropic, OpenRouter) MUST declare a dependency on `skill-environment-config` and query it for their model string at runtime. 4. **Late-Binding Updates:** Because the kernel updates the `*object-store*` on every buffer save, changing a model string in an Org file results in an immediate, hot-swapped change to the agent's behavior. * Acceptance Criteria - A user can add `:LLM_MODEL_OPENAI: gpt-4o` to a "Settings" headline in their memex. - The OpenAI provider skill successfully fetches this value via the configuration skill. - No modifications are made to the core Lisp daemon files.