67 lines
2.2 KiB
Org Mode
67 lines
2.2 KiB
Org Mode
#+TITLE: SKILL: Architect Agent (Universal Literate Note)
|
|
#+ID: skill-architect
|
|
#+STARTUP: content
|
|
#+FILETAGS: :architect:blueprint:design:psf:
|
|
|
|
* Overview
|
|
The **Architect Agent** transforms a FROZEN PRD (Demand) into a rigorous PROTOCOL (Blueprint). It bridges the gap between human requirements and machine code, ensuring structural integrity before implementation.
|
|
|
|
* Phase A: Demand (PRD)
|
|
:PROPERTIES:
|
|
:STATUS: FROZEN
|
|
:END:
|
|
|
|
** 1. Purpose
|
|
Define automated architectural behaviors for the PSF Consensus Loop.
|
|
|
|
** 2. User Needs
|
|
- **PRD Perception:** Monitor for `FROZEN` PRDs.
|
|
- **Semantic Translation:** Translate ambiguous needs into Lisp-style interfaces.
|
|
- **Memory Integration:** Reference `institutional-memory.org` for design choices.
|
|
- **Physical Actuation:** Write the `PROTOCOL.org` to the project directory.
|
|
|
|
** 3. Success Criteria
|
|
*** TODO Trigger Accuracy
|
|
*** TODO Protocol Generation Verification
|
|
*** TODO File Integrity Check
|
|
|
|
* Phase B: Blueprint (PROTOCOL)
|
|
:PROPERTIES:
|
|
:STATUS: SIGNED
|
|
:END:
|
|
|
|
** 1. Architectural Intent
|
|
Interfaces for blueprint actuation and requirement perception. Source of truth is the project's PRD.
|
|
|
|
** 2. Semantic Interfaces
|
|
#+begin_src lisp
|
|
(defun architect-perceive-frozen-prd (project-name)
|
|
"Checks if a project has a FROZEN PRD.")
|
|
|
|
(defun architect-actuate (project-name blueprint-content)
|
|
"Physically writes the PROTOCOL.org file.")
|
|
#+end_src
|
|
|
|
* Phase D: Build (Implementation)
|
|
|
|
** Blueprint Actuation
|
|
#+begin_src lisp :tangle projects/org-skill-architect/src/architect-logic.lisp
|
|
(defun architect-actuate (project-name blueprint-content)
|
|
(let* ((projects-dir (or (uiop:getenv "PROJECTS_DIR") "projects/"))
|
|
(project-dir (format nil "~a/~a/" projects-dir project-name))
|
|
(protocol-path (format nil "~aPROTOCOL.org" project-dir)))
|
|
(with-open-file (out protocol-path :direction :output :if-exists :supersede)
|
|
(format out "#+TITLE: PROTOCOL: ~a~%#+AUTHOR: Architect-Agent~%#+STATUS: DRAFT~%~%~a"
|
|
project-name blueprint-content))
|
|
(format nil "SUCCESS - Architect established PROTOCOL for ~a" project-name)))
|
|
#+end_src
|
|
|
|
* Registration
|
|
#+begin_src lisp
|
|
(defskill :skill-architect
|
|
:priority 70
|
|
:trigger #'trigger-skill-architect
|
|
:neuro #'neuro-skill-architect
|
|
:symbolic #'architect-actuate)
|
|
#+end_src
|