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

2.9 KiB

SKILL: Project Manager Agent (Universal Literate Note)

Overview

The Project Manager Agent provides executive presence by monitoring project health and tracking git status. It leverages `:PROJECT_PATH:` metadata to gather "folder facts" and assist in the project lifecycle.

Phase A: Demand (PRD)

1. Purpose

Define automated behaviors for project monitoring and version control tracking.

2. User Needs

  • Visibility: Resolve physical project locations and gather git/file facts.
  • Contextual Awareness: Trigger on status queries or project-node edits.
  • Lifecycle Support: Suggest commit messages and identify uncommitted work.

3. Success Criteria

TODO Project Path Resolution

TODO Git Status Retrieval

TODO Executive Summary Generation

Phase B: Blueprint (PROTOCOL)

Phase B: Blueprint (PROTOCOL)

1. Architectural Intent

The Project Manager Agent will use a neuro-symbolic architecture. The 'neuro' component focuses on resolving project context (path resolution and file system awareness). The symbol component manages git interactions and report generation. The system is designed for extendability, allowing new project facts to be easily incorporated. We anticipate using a 'project-data' object that is passed between lisp function, allowing all project status to be accessed / updated with low overhead.

2. Semantic Interfaces

Project Path Resolution

;;; Resolve a project path, searching for existing files as needed.
;;; Returns canonical project path or NIL.  SIDE-EFFECT: Adds project to cache.
(defun resolve-project-path (project-identifier)
  (declare (type string project-identifier))
  (values (or string null)))  ; Canonical path

Git Status Retrieval

;;; Collects the git status information for a project.
;;; Returns a project-data plist with git status
(defun get-git-status (project-path)
  (declare (type string project-path))
  (values project-data)) ; a plist of git facts, e.g., :untracked, :modified

Executive Summary Generation

;;; Generates an executive summary for a project.
;;; Return TEXT of summary for given PROJECT-DATA structure.
(defun generate-executive-summary (project-data)
  (declare (type project-data project-data))
  (values string))         ; Human-readable summary.

Suggest Commit Message

;;; Generates a suggested commit message based on the project data
(defun suggest-commit-message (project-data)
   (declare (type project-data project-data))
   (values string)) ; suggested git commit message (string)