Claude-skill-registry claude-project-manifest
Creates annotated bibliography-style manifests for Claude projects, tracking files, conversation threads, and relationships with unique IDs and annotations. Use when documenting project contents, creating file inventories, tracking conversation history, or building navigable knowledge maps.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/claude-project-manifest" ~/.claude/skills/majiayu000-claude-skill-registry-claude-project-manifest && rm -rf "$T"
manifest:
skills/data/claude-project-manifest/SKILL.mdsource content
Claude Project Manifest
Create structured, annotated documentation of Claude projects that tracks files, conversation threads, and their relationships.
When to Use
- Documenting project contents and structure
- Creating file inventories with annotations
- Tracking conversation history across sessions
- Building navigable knowledge maps
- Onboarding new collaborators to existing projects
Core Concepts
Manifest Structure
A manifest has four primary sections:
- Metadata: Project-level information (ID, version, status)
- Files: Annotated file inventory with provenance
- Threads: Conversation summaries and accomplishments
- Relations: Dependencies and connections between entities
ID System
| Entity | Format | Example |
|---|---|---|
| Project | | |
| File | | |
| Thread | | |
| Relation | | |
Quick Start
Minimal Manifest
manifest: id: "PROJ-2024-001" version: "1.0.0" created: "2024-01-15T10:30:00Z" project: name: "My Project" description: "Brief description of the project" status: active files: - id: "FILE-001" path: "src/main.py" title: "Main Entry Point" summary: "Application entry and initialization"
Full File Entry
files: - id: "FILE-001" path: "src/main.py" type: source # source | config | doc | asset | generated thread_id: "THR-001" title: "Main Entry Point" summary: "One-line description of purpose" notes: | Extended annotation explaining: - Design decisions made - Why this approach was chosen - Key implementation details - Known limitations or TODOs tags: [core, initialization] depends_on: ["FILE-002", "FILE-003"] created: "2024-01-15T10:30:00Z" modified: "2024-01-16T14:20:00Z"
Thread Entry
threads: - id: "THR-001" started: "2024-01-15T10:30:00Z" ended: "2024-01-15T12:45:00Z" title: "Initial Project Setup" summary: "Created core infrastructure and configuration" accomplishments: - "Created directory structure" - "Implemented Config class with validation" - "Added logging infrastructure" files_created: ["FILE-001", "FILE-002"] files_modified: [] decisions: - "Chose YAML over JSON for config readability" - "Used dataclasses instead of Pydantic for simplicity" tags: [setup, infrastructure]
Relations
relations: - id: "REL-001" type: depends_on source: "FILE-001" target: "FILE-002" annotation: "Main imports and uses Config class" - id: "REL-002" type: implements source: "FILE-003" target: "FILE-004" annotation: "Repository implements StorageInterface"
Relation types:
: Source requires target to functiondepends_on
: Source builds upon targetextends
: Source implements interface defined in targetimplements
: Source refers to target without hard dependencyreferences
: Source replaces target (for versioning)supersedes
Writing Annotations
File Annotations
Good annotations answer:
- What: What does this file do?
- Why: Why was this approach chosen?
- How: Key implementation details
- Context: What prompted its creation?
Example:
notes: | Implements rate limiting using token bucket algorithm. Chose token bucket over sliding window for better burst handling. Created during THR-003 when API overload issues emerged. TODO: Add Redis backend for distributed rate limiting.
Thread Annotations
Capture:
- Goal: What we set out to accomplish
- Outcome: What we actually achieved
- Decisions: Key choices made and rationale
- Artifacts: Files created or modified
Workflow
Starting a New Project
- Create manifest file (
)manifest.yaml - Add project metadata
- Set initial status to
active
During Development
- Log new threads as conversations happen
- Add files with annotations when created
- Record relations as dependencies form
- Update thread accomplishments
Project Handoff
- Review all thread summaries
- Verify file annotations are current
- Validate all relations are documented
- Export to markdown report if needed
Output Formats
YAML (Primary)
Best for editing and version control. See
assets/templates/manifest.yaml.
JSON (Machine-Readable)
For programmatic access. See
assets/templates/manifest.json.
Markdown Report
Human-readable export for documentation. See
assets/templates/manifest-report.md.
References
— Full schema specificationreferences/manifest-schema.md
— Writing effective annotationsreferences/annotation-guidelines.md
— ID generation strategiesreferences/id-systems.md
— Integration patternsreferences/workflow-integration.md
Related Skills
- knowledge-graph-builder: For more complex relationship modeling
- documentation-generator: For generating docs from manifests