Files
memex/notes/org-skill-workspace-manager.org

2.7 KiB

SKILL: Workspace Manager Agent (Universal Literate Note)

Overview

The Workspace Manager Agent is responsible for the ongoing maintenance and organization of the Memex workspace. It automates the "housekeeping" aspects of the PARA/Zettelkasten workflow, focusing on clutter reduction and structural alignment.

Phase A: Demand (PRD)

1. Purpose

Define automated housekeeping behaviors for PARA/Zettelkasten maintenance.

2. User Needs

  • Clutter Reduction: Identify and archive `DONE` tasks.
  • Workflow Alignment: Ensure consistency with PARA directory structure.
  • Proactive Organization: Trigger on saves and heartbeats.

3. Success Criteria

TODO Task Identification

TODO Archiving Suggestion Loop

TODO Perception Coverage (Buffer & Heartbeat)

Phase B: Blueprint (PROTOCOL)

1. Architectural Intent

Interfaces for workspace auditing and archiving suggestions.

2. Semantic Interfaces

(defun trigger-skill-workspace-manager (context)
  "Triggers on :buffer-update or :heartbeat.")

(defun archive-completed-tasks ()
  "Queries store for DONE tasks and returns their IDs.")

(defun neuro-skill-workspace-manager (context)
  "Neural synthesis of archiving suggestions.")

Phase D: Build (Implementation)

Dual Perception

(defun trigger-skill-workspace-manager (context)
  (let* ((payload (getf context :payload))
         (sensor (getf payload :sensor)))
    (or (eq sensor :buffer-update)
        (eq sensor :heartbeat))))

Stale Task Identification

(defun archive-completed-tasks ()
  "Identify DONE tasks and suggest archiving."
  (let ((done-tasks (org-agent:context-query-store :todo-state "DONE" :type :HEADLINE)))
    (when done-tasks
      (mapcar #'org-agent:org-object-id done-tasks))))

Neuro-Cognitive Drafting

(defun neuro-skill-workspace-manager (context)
  (let ((ready-to-archive (archive-completed-tasks))
        (archive-dir (or (uiop:getenv "ARCHIVES_DIR") "archives/")))
    (if ready-to-archive
        (format nil "I found these completed tasks: ~a. Should I move them to ~a?" ready-to-archive archive-dir)
        nil)))

Registration

(defskill :skill-workspace-manager
  :priority 40
  :trigger #'trigger-skill-workspace-manager
  :neuro #'neuro-skill-workspace-manager
  :symbolic (lambda (action context) action))