Add project-docs lifecycle meta-skill
This commit is contained in:
118
skills/project-docs/SKILL.md
Normal file
118
skills/project-docs/SKILL.md
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
---
|
||||||
|
name: project-docs
|
||||||
|
description: Meta-skill to initiate or update multi-platform documentation for any project across Gitea, Obsidian, Mermaid/Archify, Vikunja, and Outline. Use when starting a new project, updating codebase docs, generating portfolio-aligned READMEs, creating AI resume context, or syncing multi-platform project documentation.
|
||||||
|
version: 1.0.0
|
||||||
|
---
|
||||||
|
|
||||||
|
# project-docs (Project Lifecycle & Documentation Meta-Skill)
|
||||||
|
|
||||||
|
`project-docs` is an **orchestrator / meta-skill** for managing project documentation across human and AI channels. Instead of re-inventing diagramming or vault manipulation, it delegates specific tasks to specialized skills (`nixos-workflow`, `project-diagramming-mermaid`, `project-diagramming-archify`, `obsidian-cli`).
|
||||||
|
|
||||||
|
It can be enabled on any project via `nixos-workflow` (`/config-add skill project-docs`) and invoked to **initiate** or **update** project documentation.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🎯 Platform & Target Matrix
|
||||||
|
|
||||||
|
Each platform serves a specific role, audience, tone, and scope:
|
||||||
|
|
||||||
|
| Platform | Target Audience | Purpose & Tone | Key Artifacts / Requirements |
|
||||||
|
| :--- | :--- | :--- | :--- |
|
||||||
|
| **Gitea** | Technical / Resume / Portfolio | Technical documentation and repo README. **Standard Markdown style**: brief, concise, and to the point. Highlights tech stack, usage, and key tools/skills demonstrated for employment. | `README.md` (embedded Mermaid diagram, Archify links, setup/usage commands). |
|
||||||
|
| **Obsidian** | Humans / Hiring Managers / Self | **Human understanding**. Simple, clear, layperson-friendly language, brief. Highlights skills, tools, and ideas that showcase for employment while forming a usable tool for understanding things. | `<vault>/Projects/<ProjectName>.md` (simple overview, employment highlights, embedded Mermaid). |
|
||||||
|
| **Mermaid + Archify** | Architectural Visualization | High-level system architecture and flow diagrams. | `<project>/docs/<topic>.mmd`, embedded SVG/PNG in Gitea & Obsidian. Nodes link to `https://maps.lab.audasmedia.com.au/<project>/docs/`. |
|
||||||
|
| **Vikunja** | Humans | **High-level task tracking**. Simple, brief, actionable human steps (milestones, key deliverables). | Project/Board in Vikunja with top-level tasks for human execution. |
|
||||||
|
| **Outline** | AI Agents | **Deep AI context & knowledge base**. Exhaustive configuration details, directions, architecture notes, and instructions for AI agents to pick up and resume context on future restarts. | Outline Document / Collection (deep context, env vars, agent runbook). |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔄 Modes of Operation
|
||||||
|
|
||||||
|
When activated, `project-docs` runs in one of two modes:
|
||||||
|
|
||||||
|
### Mode 1: Initiate (New Project Bootstrap)
|
||||||
|
Scans the current directory, audits existing documentation assets, and interactively steps through each platform to establish missing docs.
|
||||||
|
|
||||||
|
### Mode 2: Update (Keep Docs in Sync)
|
||||||
|
Scans git history, recent code edits, or architectural changes, then updates affected documentation platforms to keep human and AI docs synchronized.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📋 Interactive Discovery & Confirmation Protocol
|
||||||
|
|
||||||
|
Before creating or altering any documentation asset, `project-docs` MUST **ask and confirm** each requirement with the user.
|
||||||
|
|
||||||
|
### 1. Gitea Repository
|
||||||
|
- **Check**: Is there an existing Gitea git remote or repo?
|
||||||
|
- **Ask/Confirm**: *"Most projects have a Gitea repository. Does one exist for this project, or should it be created? [Name/Location]"*
|
||||||
|
- **Action**: Ensure repository is initialized; prepare technical `README.md` with concise usage and employment skill highlights.
|
||||||
|
|
||||||
|
### 2. Obsidian Project Note
|
||||||
|
- **Check**: Does an Obsidian project note exist?
|
||||||
|
- **Ask/Confirm**: *"Should an Obsidian project note be created for human understanding and portfolio showcase? [Confirm / Vault Path / Note Name]"*
|
||||||
|
- **Action**: Create/update the note using simple, accessible language explaining the project's purpose, key skills, and tools.
|
||||||
|
|
||||||
|
### 3. Mermaid & Archify Diagram
|
||||||
|
- **Check**: Does `<project>/docs/<topic>.mmd` or rendered diagrams exist?
|
||||||
|
- **Ask/Confirm**: *"Do you want a Mermaid architecture diagram and Archify interactive map for this project? [Confirm / Topic]"*
|
||||||
|
- **Action**:
|
||||||
|
1. Delegate to `project-diagramming-mermaid` to generate source `.mmd` and render SVG/PNG.
|
||||||
|
2. Embed Mermaid in Gitea `README.md` and Obsidian note.
|
||||||
|
3. Hyperlink Mermaid nodes/components to Archify maps on `https://maps.lab.audasmedia.com.au/`.
|
||||||
|
4. Optionally delegate map publishing to `project-diagramming-archify` (`publish-maps.sh`).
|
||||||
|
|
||||||
|
### 4. Vikunja (Human Tasks)
|
||||||
|
- **Check**: Is Vikunja task tracking configured?
|
||||||
|
- **Ask/Confirm**: *"Should a Vikunja project/board be created for human task tracking? [Confirm / Name / Location]"*
|
||||||
|
- **Action**: Define simple, high-level tasks for human team members/owner to follow.
|
||||||
|
|
||||||
|
### 5. Outline (AI Context & Resume Instructions)
|
||||||
|
- **Check**: Does an Outline documentation page exist for AI resume?
|
||||||
|
- **Ask/Confirm**: *"Should an Outline document be created for AI agents to resume context across restarts? [Confirm / Collection]"*
|
||||||
|
- **Action**: Generate structured AI documentation containing architecture breakdown, environment variables, dependencies, and agent recovery steps.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🛠 Sub-Skill Orchestration Rules
|
||||||
|
|
||||||
|
- **`nixos-workflow`**: Used for asset management. New skill updates are pushed to Gitea (`https://gitea.lab.audasmedia.com.au/sam/pi-config`) and activated per project via `/config-add skill project-docs`.
|
||||||
|
- **`project-diagramming-mermaid`**: Triggered when generating or updating Mermaid source and image renderings under `<project>/docs/`.
|
||||||
|
- **`project-diagramming-archify`**: Triggered to build interactive HTML architecture maps and publish to `maps.lab.audasmedia.com.au`.
|
||||||
|
- **`obsidian-cli`**: Triggered when interacting with Obsidian vault notes, searching existing vault knowledge, or creating notes via CLI.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📝 Document Style Guidelines
|
||||||
|
|
||||||
|
### Gitea README (`README.md`)
|
||||||
|
- Tone: Direct, professional, developer-focused.
|
||||||
|
- Sections: Overview, Key Tools & Demonstrated Skills (Resume alignment), Quick Start / Setup, Architecture Diagram, API / Usage details.
|
||||||
|
- Length: Concise, clean, bullet-focused.
|
||||||
|
|
||||||
|
### Obsidian Note (`<NoteName>.md`)
|
||||||
|
- Tone: Human-friendly, conversational yet structured.
|
||||||
|
- Sections: What is this? (Plain English), Why it matters / Portfolio showcase, Key Tools & Concepts, Architecture Overview (Mermaid), Related Notes.
|
||||||
|
- Length: Brief and intuitive.
|
||||||
|
|
||||||
|
### Vikunja Tasks
|
||||||
|
- Tone: Imperative, high-level, human-actionable.
|
||||||
|
- Examples: `"Configure Caddy reverse proxy"`, `"Test API endpoints"`, `"Deploy v1.0 to production"`.
|
||||||
|
|
||||||
|
### Outline AI Context (`outline-ai-context.md`)
|
||||||
|
- Tone: Explicit, technical, context-dense, machine-oriented.
|
||||||
|
- Sections: System Purpose, Stack & Environment Variables, File Map, Subagent Workflows, Known Quirks & Recovery Steps.
|
||||||
|
- Length: Exhaustive technical detail for AI restarts.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🚀 Per-Project Activation & Workflow
|
||||||
|
|
||||||
|
To enable `project-docs` on any project workspace:
|
||||||
|
```bash
|
||||||
|
/config-add skill project-docs
|
||||||
|
/reload
|
||||||
|
```
|
||||||
|
|
||||||
|
To invoke:
|
||||||
|
- Initiate: *"Initiate project documentation using project-docs"*
|
||||||
|
- Update: *"Update project docs across Gitea, Obsidian, Vikunja, and Outline"*
|
||||||
25
skills/project-docs/templates/gitea-readme.md.tpl
Normal file
25
skills/project-docs/templates/gitea-readme.md.tpl
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
# {{PROJECT_NAME}}
|
||||||
|
|
||||||
|
{{PROJECT_SHORT_DESCRIPTION}}
|
||||||
|
|
||||||
|
## 🛠 Demonstrated Skills & Tech Stack
|
||||||
|
- **Core Technologies**: {{TECH_STACK}}
|
||||||
|
- **Key Tools**: {{TOOLS_USED}}
|
||||||
|
- **Engineering Capabilities**: {{DEMONSTRATED_SKILLS}}
|
||||||
|
|
||||||
|
## 🚀 Quick Start
|
||||||
|
|
||||||
|
```bash
|
||||||
|
{{QUICK_START_COMMANDS}}
|
||||||
|
```
|
||||||
|
|
||||||
|
## 📐 System Architecture
|
||||||
|
|
||||||
|
```mermaid
|
||||||
|
{{MERMAID_DIAGRAM_SOURCE}}
|
||||||
|
```
|
||||||
|
|
||||||
|
*Interactive Architecture Map available at:* [maps.lab.audasmedia.com.au/{{PROJECT_NAME}}](https://maps.lab.audasmedia.com.au/{{PROJECT_NAME}}/)
|
||||||
|
|
||||||
|
## 📝 Usage & Configuration
|
||||||
|
{{USAGE_NOTES}}
|
||||||
8
skills/project-docs/templates/mermaid-archify.mmd.tpl
Normal file
8
skills/project-docs/templates/mermaid-archify.mmd.tpl
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
flowchart LR
|
||||||
|
U[User / Client] --> UI[Web Interface / Client App]
|
||||||
|
UI --> API[API Gateway / Service Layer]
|
||||||
|
API --> DB[(Database / Storage)]
|
||||||
|
API --> AI[AI Agent Context / Engine]
|
||||||
|
|
||||||
|
click API "https://maps.lab.audasmedia.com.au/{{PROJECT_NAME}}/docs/" "View Archify Map"
|
||||||
|
click DB "https://maps.lab.audasmedia.com.au/{{PROJECT_NAME}}/docs/" "View Archify Map"
|
||||||
31
skills/project-docs/templates/obsidian-note.md.tpl
Normal file
31
skills/project-docs/templates/obsidian-note.md.tpl
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
tags:
|
||||||
|
- project
|
||||||
|
- {{PROJECT_TAG}}
|
||||||
|
- showcase
|
||||||
|
skills:
|
||||||
|
- {{DEMONSTRATED_SKILLS_LIST}}
|
||||||
|
tools:
|
||||||
|
- {{TOOLS_USED_LIST}}
|
||||||
|
---
|
||||||
|
|
||||||
|
# {{PROJECT_NAME}} — Overview
|
||||||
|
|
||||||
|
## 💡 What is this project?
|
||||||
|
{{HUMAN_EXPLANATION_SIMPLE}}
|
||||||
|
|
||||||
|
## 🌟 Key Highlights (Portfolio & Employment)
|
||||||
|
- **Concept**: {{KEY_CONCEPT}}
|
||||||
|
- **Tools & Skills Showcase**: {{SHOWCASE_HIGHLIGHTS}}
|
||||||
|
- **Practical Value**: {{PRACTICAL_VALUE}}
|
||||||
|
|
||||||
|
## 📐 Architecture & Flow
|
||||||
|
|
||||||
|
```mermaid
|
||||||
|
{{MERMAID_DIAGRAM_SOURCE}}
|
||||||
|
```
|
||||||
|
|
||||||
|
## 🔗 Related Notes & Links
|
||||||
|
- Gitea Repo: `{{GITEA_REPO_URL}}`
|
||||||
|
- Interactive Map: [Archify Map](https://maps.lab.audasmedia.com.au/{{PROJECT_NAME}}/)
|
||||||
|
- AI Context (Outline): `{{OUTLINE_DOC_URL}}`
|
||||||
27
skills/project-docs/templates/outline-ai-context.md.tpl
Normal file
27
skills/project-docs/templates/outline-ai-context.md.tpl
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
# {{PROJECT_NAME}} — AI Agent Context & Context Recovery Guide
|
||||||
|
|
||||||
|
> **Target Audience**: AI Coding Agents & LLMs
|
||||||
|
> **Purpose**: Deep context, environment variables, configuration directives, and restart runbooks for autonomous AI agents.
|
||||||
|
|
||||||
|
## 🎯 System Overview & Intent
|
||||||
|
{{SYSTEM_INTENT_DETAILED}}
|
||||||
|
|
||||||
|
## ⚙️ Configuration & Environment
|
||||||
|
- **Environment Variables**: {{ENV_VARIABLES}}
|
||||||
|
- **Config Files**: {{CONFIG_PATHS}}
|
||||||
|
- **Services & Ports**: {{SERVICES_AND_PORTS}}
|
||||||
|
|
||||||
|
## 📁 Key File Map
|
||||||
|
```
|
||||||
|
{{DIRECTORY_TREE_SUMMARY}}
|
||||||
|
```
|
||||||
|
|
||||||
|
## 🔄 AI Agent Resume Protocol
|
||||||
|
When restarting or resuming work on this project, an AI agent MUST:
|
||||||
|
1. Verify system dependencies and services are running.
|
||||||
|
2. Read `docs/outline-ai-context.md` (this file) for structural understanding.
|
||||||
|
3. Check Git status and recent commits (`git log -n 5`).
|
||||||
|
4. Execute validation tests: `{{VALIDATION_COMMANDS}}`.
|
||||||
|
|
||||||
|
## ⚠️ Known Quirks & Recovery Runbooks
|
||||||
|
{{KNOWN_QUIRKS_AND_RUNBOOKS}}
|
||||||
22
skills/project-docs/templates/vikunja-tasks.json.tpl
Normal file
22
skills/project-docs/templates/vikunja-tasks.json.tpl
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"title": "{{PROJECT_NAME}} - Human Task Overview",
|
||||||
|
"description": "High-level task checklist for human team members.",
|
||||||
|
"tasks": [
|
||||||
|
{
|
||||||
|
"title": "Confirm Gitea repository creation & standard README",
|
||||||
|
"done": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Review Obsidian portfolio note and employment skill highlights",
|
||||||
|
"done": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Verify Mermaid architecture diagram & Archify map link",
|
||||||
|
"done": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Ensure Outline AI context doc is present for agent restarts",
|
||||||
|
"done": false
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user