#+TITLE: SKILL: Getting Things Done (GTD) (Universal Literate Note) #+ID: skill-gtd #+STARTUP: content #+FILETAGS: :gtd:execution:workflow:psf: * Overview This skill defines the *GTD Execution Hub*, the single source of truth for all commitments. It governs how the agent perceives priorities and tracks progress through the PSF Consensus Loop using the `org-gtd` v4.0 DAG architecture. * Phase A: Demand (PRD) :PROPERTIES: :STATUS: FROZEN :END: ** 1. Purpose Define the interfaces for task perception, project tracking, and commitment management. ** 2. User Needs - *Allen-Sovereign Methodology:* Frictionless capture and rigorous clarification. - *DAG Structure:* Support for `org-gtd` v4.0 dependency graphs (:TRIGGER:, :BLOCKER:). - *Shadow Orchestration:* Tracking of `:PSF-STATE:` properties for engineering projects. - *Institutional Memory Integration:* Extraction of learnings before project completion. ** 3. Success Criteria *** TODO Commitment Scanning *** TODO PSF-State Transition Verification *** TODO Stalled Project Identification * Phase B: Blueprint (PROTOCOL) :PROPERTIES: :STATUS: SIGNED :END: ** 1. Architectural Intent Interfaces for querying and updating the GTD state. Source of truth is `gtd.org` and related agenda files. ** 2. Semantic Interfaces #+begin_src lisp (defun gtd-perceive-commitments () "Returns a list of all active NEXT actions.") (defun gtd-update-project-state (project-id new-state) "Updates the :PSF-STATE: property of a project.") (defun gtd-breakdown-project (project-id) "Uses the Long-Horizon Planning agent to generate NEXT steps for a stalled project.") #+end_src * Phase D: Build (Implementation) ** Commitment Perception #+begin_src lisp :tangle projects/org-skill-gtd/src/gtd-logic.lisp (defun gtd-perceive-commitments () "Returns a list of all active NEXT actions across the agenda files." (let ((gtd-file (or (uiop:getenv "GTD_FILE") "gtd.org"))) (kernel-log "GTD - Scanning commitments in ~a" gtd-file) (uiop:run-program (list "grep" "^\\*\\* NEXT" gtd-file) :output :string))) (defun gtd-breakdown-project (project-id) "Autonomously expands a complex project into actionable NEXT steps." (let* ((obj (org-agent:lookup-object project-id)) (title (getf (org-agent:org-object-attributes obj) :TITLE)) (content (org-agent:org-object-content obj))) (org-agent:spawn-task (format nil "Break down the project '~a' into 3 actionable NEXT steps. Context: ~a" title content)))) #+end_src ** Shadow Orchestration #+begin_src lisp :tangle projects/org-skill-gtd/src/gtd-logic.lisp (defun gtd-get-psf-state (project-id) "Retrieves the :PSF-STATE: property for a specific project ID." (let ((gtd-file (or (uiop:getenv "GTD_FILE") "gtd.org"))) ;; Logic to parse project and return state (format nil "Retrieving state for: ~a" project-id))) #+end_src * Registration #+begin_src lisp (defskill :skill-gtd :priority 100 :trigger (lambda (context) nil) :neuro (lambda (context) nil) :symbolic #'gtd-perceive-commitments) #+end_src