Files
memex/notes/org-skill-model-explorer.org

65 lines
2.1 KiB
Org Mode

#+TITLE: SKILL: Model Explorer Agent (Universal Literate Note)
#+ID: skill-model-explorer
#+STARTUP: content
#+FILETAGS: :discovery:telemetry:psf:
* Overview
The *Model Explorer Agent* provides dynamic introspection of the system's LLM capabilities. It intercepts specific user commands to list and describe all available models across providers, rendering them as native Org-mode tables.
* Phase A: Demand (PRD)
:PROPERTIES:
:STATUS: FROZEN
:END:
** 1. Purpose
Define the interfaces for system-wide model discovery and transparency.
** 2. User Needs
- *Transparency:* Visible list of models and context windows.
- *Determinism:* Metadata retrieval must bypass System 1 for high fidelity.
- *Integration:* Results rendered as native Org-mode tables.
** 3. Success Criteria
*** TODO Command Trigger Verification (@agent list models)
*** TODO Provider Registry Introspection
*** TODO Org Table Formatting Accuracy
* Phase B: Blueprint (PROTOCOL)
:PROPERTIES:
:STATUS: SIGNED
:END:
** 1. Architectural Intent
Interfaces for dynamic skill introspection and Emacs UI injection. Source of truth is the active `*skills-registry*`.
** 2. Semantic Interfaces
#+begin_src lisp
(defun trigger-skill-model-explorer (context)
"Triggers on '@agent list models' in buffer updates.")
(defun build-org-table-for-models ()
"Dynamically builds an Org table from registered provider skills.")
(defun execute-skill-model-explorer (proposed-action context)
"Injects the model table into the active Emacs buffer.")
#+end_src
* Phase D: Build (Implementation)
** Provider Introspection
#+begin_src lisp :tangle projects/org-skill-model-explorer/src/explorer-logic.lisp
(defun build-org-table-for-models ()
(let ((table-rows (list "| Provider | Model ID | Context |" "|----------+----------+---------|")))
;; Logic to iterate through skills-registry and call get-available-models
(format nil "~{~a~^~%~}" table-rows)))
#+end_src
* Registration
#+begin_src lisp
(defskill :skill-model-explorer
:priority 85
:trigger #'trigger-skill-model-explorer
:neuro (lambda (context) nil)
:symbolic #'execute-skill-model-explorer)
#+end_src