3.2 KiB
SKILL: Workspace Manager Agent (PARA/Memex Maintenance)
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, such as archiving completed tasks and identifying inbox items that require structural attention.
The Maintenance Mandate
- Clutter Reduction: Automatically identify tasks marked as DONE and suggest archiving them to preserve the performance of active note files.
- Workflow Alignment: Ensure that the workspace remains consistent with the user's PARA directory structure.
- Proactive Organization: Triggers on both buffer saves and background heartbeats to ensure the workspace stays optimized without manual intervention.
Symbolic Implementation (The Logic)
The implementation focuses on the efficient identification of "stale" or completed nodes within the object store.
Architectural Intent: Dual Perception
Triggers on both direct user edits (buffer updates) and temporal pulses (heartbeats), ensuring that the manager can provide both real-time feedback and autonomous cleanup.
(defun trigger-skill-workspace-manager (context)
(let* ((payload (getf context :payload))
(sensor (getf payload :sensor)))
(or (eq sensor :buffer-update)
(eq sensor :heartbeat))))
Architectural Intent: Stale Task Identification
This function audits the global object store for headlines in the `DONE` state. It returns a list of IDs to the cognitive layer, providing the "raw material" for an archiving suggestion.
(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
(kernel-log "WORKSPACE - Found ~a tasks ready for archiving." (length done-tasks))
;; Return a list of IDs to move
(mapcar #'org-agent:org-object-id done-tasks))))
Architectural Intent: Neuro-Cognitive Archive Drafting
The neural layer synthesizes the list of completed tasks into a polite archiving request, ensuring the user remains in control of significant workspace moves while reducing the cognitive load of routine maintenance.
(defun neuro-skill-workspace-manager (context)
(let ((ready-to-archive (archive-completed-tasks))
(archive-dir (org-agent::get-env "ARCHIVES_DIR" "/app/8_archives/")))
(if ready-to-archive
(format nil "
WORKSPACE UPDATE -
I found these tasks marked DONE in the Atomic Notes (Zettelkasten) - ~a
Suggest an Org-mode action to move them to the '~a' folder.
Return a Lisp plist - (:target :emacs :action :message :text \"I found completed tasks. Should I archive them?\")
" 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))