Initial commit: extracted from memex
This commit is contained in:
47
docs/PROTOCOL_dynamic_model_switching.org
Normal file
47
docs/PROTOCOL_dynamic_model_switching.org
Normal file
@@ -0,0 +1,47 @@
|
||||
#+TITLE: PROTOCOL: Skill-Based Configuration
|
||||
#+AUTHOR: PSF Architect
|
||||
#+DATE: 2026-03-24
|
||||
#+STARTUP: content
|
||||
|
||||
* Overview
|
||||
This protocol defines the skill-to-skill interface for retrieving environment configuration from the Org-mode Object-Store. It leverages the **Skill Graph** to provide a centralized configuration API for all other skills.
|
||||
|
||||
* The Configuration Skill (`skill-environment-config.org`)
|
||||
|
||||
** 1. Internal Logic
|
||||
The skill iterates over the kernel's `*object-store*` to find headlines containing specific properties.
|
||||
|
||||
#+begin_src lisp
|
||||
(defun get-config-attribute (property-key &optional default)
|
||||
"Searches the global *object-store* for any headline containing PROPERTY-KEY."
|
||||
(let ((store org-agent:*object-store*))
|
||||
(maphash (lambda (id obj)
|
||||
(declare (ignore id))
|
||||
(when (eq (org-agent:org-object-type obj) :HEADLINE)
|
||||
(let ((val (getf (org-agent:org-object-attributes obj) property-key)))
|
||||
(when val
|
||||
(return-from get-config-attribute val)))))
|
||||
store)
|
||||
default))
|
||||
#+end_src
|
||||
|
||||
* Skill Graph Integration
|
||||
|
||||
** 2. Dependency Declaration
|
||||
Other skills requiring configuration MUST declare a dependency on this skill.
|
||||
|
||||
#+begin_src org
|
||||
#+DEPENDS_ON: skill-environment-config
|
||||
#+end_src
|
||||
|
||||
** 3. Provider Integration Example
|
||||
Provider skills will invoke the config skill's API during the System 1 prompt generation.
|
||||
|
||||
#+begin_src lisp
|
||||
(let ((model (org-agent.skills.skill-environment-config:get-config-attribute :LLM_MODEL_OPENAI "gpt-4-turbo-preview")))
|
||||
;; ... use model in API call ...
|
||||
)
|
||||
#+end_src
|
||||
|
||||
* No Core Modifications Required
|
||||
This protocol adheres to the **Minimalist Core** mandate by implementing the entirety of the "Dynamic Model Switching" logic within the Skill Layer.
|
||||
Reference in New Issue
Block a user