2.5 KiB
2.5 KiB
SKILL: Getting Things Done (GTD) (Universal Literate Note)
- Overview
- Phase A: Demand (PRD)
- Phase B: Blueprint (PROTOCOL)
- Phase D: Build (Implementation)
- Registration
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)
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)
1. Architectural Intent
Interfaces for querying and updating the GTD state. Source of truth is `gtd.org` and related agenda files.
2. Semantic Interfaces
(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.")
Phase D: Build (Implementation)
Commitment Perception
(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)))
Shadow Orchestration
(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)))
Registration
(defskill :skill-gtd
:priority 100
:trigger (lambda (context) nil)
:neuro (lambda (context) nil)
:symbolic #'gtd-perceive-commitments)