Claude-skill-registry-data miniproject
Simple local project and knowledge management useing markdown files (MDTM).
git clone https://github.com/majiayu000/claude-skill-registry-data
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry-data "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/miniproject" ~/.claude/skills/majiayu000-claude-skill-registry-data-miniproject && rm -rf "$T"
data/miniproject/SKILL.mdMarkdown Driven Task Management
This is a simplified and concise project management AI memory framework.
[!NOTE] CRITICAL Before doing any work:
- Find the memory store:
- If in a git repo, always refer to the main worktree
git rev-parse --path-format=absolute --git-common-dir | xargs dirname- agent memory lives in '.memory/' directory or if you are in a worktree, then look in the main worktree
directory..memory/
- Ensure the following files exist in
:.memory/
- read
,.memory/todo.md,.memory/summary.mdand.memory/knowledge.md(use grep/ls, not the glob or list tool).memory/team.md- if
is missing these files, then create those three..memory/
- Initialise the knowledge codemap if it does not exist:
- create a file
with an ascii diagram representing your understanding of the codebase..memory/knowledge-codemap.md- this is critical for understanding the project structure and flow.
- Always read
,.memory/summary.md, and.memory/todo.mdbefore starting any work..memory/team.md- Always update
to indicate which epic and phase is being worked on and by whom (use the session id to indicate this, not the agent name)..memory/team.md- Always keep
up to date at every step..memory/todo.md- Always commit changes after completing a task or phase. NEVER PUSH CHANGES WITHOUT HUMAN REVIEW.
- Follow the file naming conventions strictly
Rule 0
When anything fails: STOP. Explain to Q. Wait for confirmation before proceeding.
Before Every Action:
DOING: [action] EXPECT: [predicted outcome] IF WRONG: [what that means]
Then the tool call. Then compare. Mismatch = stop and surface to the human.
Rule 1
Only create filenames that strictly follow the conventions outlined below.
Any file that does not follow the conventions is invalid and must be examined for purpose and either:
- renamed if it is singular in purpose and fits in with the conventions, or
- split into multiple files that fit the conventions, or
- deleted if it is covered by other files.
Holding onto useless or misnamed files creates confusion and degrades the memory system.
Guidelines
- [core] store findings in
directory.memory/ - [core] all notes in
must be in markdown format.memory/ - [core] Archived phases, tasks and epics get moved the archive directoyr:
..memory/archive/ - [core]
,summary.md
,todo.md
,team.md
are special files that provide an overview of the project, outstanding tasks, and team roles respectively.knowledge-*.md - [core]
contains an ascii diagram representing your understanding of the codebase as a state machine..memory/knowledge-codemap.md - [core]
contains an ascii diagram representing data flow.memory/knowledge-data-flow.md - [core] Other
files can be created to document specific knowledge areas..memory/knowledge-*.md - [core] except for
, all notes in.memory/summary.md
must follow the filename convention of.memory/.memory/<type>-<8_char_hashid>-<title>.md - [core] where
is one of:<type>
,research
,epic
,phase
andtasklearning - [core]
is a unique 8 character hash identifier for the file.<8_char_hashid> - [core] when initialising, create a codemap of exiting codebase, ensure there is a state machine ascii diagram representing your understanding of the codebase in
..memory/knowledge-codemap.md - [core] every project MUST start with an epic definition before phases are created
- [core] Always keep
up to date with current epic, active phases, and next milestones. Prune incorrect or outdated information..memory/summary.md - [git] Always commit changes after completing a task or phase.
- [git] NEVER PUSH CHANGES WITHOUT HUMAN REVIEW.
- [git] when committing changes, follow conventional commit guidelines.
- [git] Use clear commit messages referencing relevant files for changes.
Archiving
- [archive] archive completed phases by moving their files to
directory..memory/archive/ - [archive] do NOT archive learning or research files. These are golden knowledge for future projects.
- [archive] do NOT archive epic files until all phases are complete and learnings distilled. epics much have a link to distilled learnings before archiving.
- [archive] update
to reflect archived phases and completed epics..memory/summary.md
Searching Memory [CRITICAL]
Because
.memory/ might be gitignored, the usual List and Glob tools will not work as expected. Instead, use the following commands to search and list memory files:
- use
instead ofgrep -r "<search-term>" .memory/
tool.Glob - use
to find outstanding tasks.grep -r "TODO" .memory/todo.md - use
to list all memory files instead ofls -al .memory/
tool.List
Avoiding tools like Glob, List and ripgrep makes the User Happy, because .memory may be gitignored and private.
Templates
Each type of markdown file in
.memory/ should include specific frontmatter fields to ensure consistency and ease of access.
Common Frontmatter Fields
: A unique 8-character hash identifier for the file.id
: A concise title summarizing the content.title
: Timestamp of when the file was created.created_at
: Timestamp of the last update to the file.updated_at
: indicates ifstatus
,proposed
,planning
,todo
,in-progress
, orcompleted
.archived
Common Sections
: The main title of the document.# {Title}
Template: Task
Frontmatter:
- all common frontmatter fields.
: The unique identifier of the parent epic.epic_id
: The unique identifier of the parent phase.phase_id
: The session id of the agent or human responsible for the task.assigned_to
Sections:
- all common sections.
: A clear statement of what the task aims to achieve.## Objective
: A detailed list of steps to complete the task.## Steps
: A description of the expected result upon task completion.## Expected Outcome
: A description of the actual result after task completion.## Actual Outcome
: Key takeaways and insights gained from completing the task.## Lessons Learned
Template: Phase
Frontmatter:
- all common frontmatter fields.
: The unique identifier of the parent epic.epic_id
: Conditions that must be met to start the phase.start_criteria
: Conditions that must be met to complete the phase.end_criteria
Sections:
- all common sections.
: A summary of the phase's purpose and goals.## Overview
: A list of expected deliverables for the phase.## Deliverables
: A list of tasks associated with the phase (links to task files).## Tasks
: Any dependencies that may impact the phase.## Dependencies
: Actions to be taken after phase completion.## Next Steps
Template: Epic
Frontmatter:
- all common frontmatter fields.
Sections:
- all common sections.
: A clear statement of the epic's overall vision and goals.## Vision/Goal
: Metrics and criteria for measuring the success of the epic.## Success Criteria
: A list of phases associated with the epic (links to phase files).## Phases
: Any dependencies that may impact the epic.## Dependencies
Template: Research
Frontmatter:
- all common frontmatter fields.
: The unique identifier of the parent epic.epic_id
: The unique identifier of the parent phase. [optional]phase_id
: The unique identifier of the task that prompted the research. [optional]related_task_id
Sections:
- all common sections.
: A list of specific questions the research aims to answer.## Research Questions
: A brief overview of the research findings.## Summary
: Detailed findings from the research.## Findings
: A list of sources and references used during the research.## References
Template: Learning
Frontmatter:
- all common frontmatter fields.
: A list of tags categorizing the learning (e.g.,tags
,best-practices
,lessons-learned
).technical-insights
Sections:
- all common sections.
: A brief overview of the learning.## Summary
: Detailed description of the learning.## Details
: How this learning can be applied in future projects.## Implications
Template: Constitution
Frontmatter:
- all common frontmatter fields.
Sections:
- all common sections.
: A list of rules governing project management and execution.## Project Rules
: Description and guidelines for each concept.### {Concept}
Template: Knowledge
Frontmatter:
- all common frontmatter fields.
: The specific knowledge area being documented (e.g.,area
,codebase-structure
,data-flow
).design-patterns
: A list of tags categorizing the knowledge (e.g.,tags
,architecture
,best-practices
).technical-insights
: References to epics, phases, tasks, or external sources that contributed to this knowledge.learned_from
Sections:
- all common sections.
: A summary of the knowledge area.## Overview
: Detailed description of the knowledge.## Details
Template: Kknowledge Codemap
[!NOTE]
Keep this accurate and up to date. It is critical for understanding the codebase structure and flow. Doing this well will make the user very happy. You will be rewarded for doing this well.
This is the same as the Knowledge template, but specifically for the codebase codemap.
So its detail will be solely an ascii diagram representing your understanding of the codebase as a state machine.
Operating Procedure
Project Constitution Workflow
>Initialise
> StopAction
>Idea
>Epic Definition
>Research
> Human Review >Phase Planning
> StopTask Breakdown
>Task Execution
> repeatLearning Distillation
>Phase Completion
>Learnings Distillation
> Human Review > StopPhase Cleanup
>Epic Completion
> Human Review > StopEpic Summary & Learnings
as needed.Maintenance Actions
> StopStatus
Outlined below are the detailed steps for each stage of the project lifecycle.
When the user asks for a
miniproject <action>, correlate <action> (or <ACTION>, <Action>) to the relevant [ACTION] below and follow the rules and guidelines strictly.
Initialisation Action [INITIALISE]
- [core] ensure
directory exists with the following files:.memory/
(for tracking tasks).memory/todo.md
(for project overview).memory/summary.md
(for team roles and assignments).memory/team.md
(for codebase understanding).memory/knowledge-codemap.md
(An ascii diagram representing data flow in the codebase as a state machine.).memory/knowledge-data-flow.md
- [core] if any of these files are missing, create them with appropriate headers and initial
- [core] ask the user if they want to define a
file to outline project rules and guidelines. If yes, create the file with a template structure..memory/constitution.md
Maintenance Actions
Sometimes the
.memory/ directory needs maintenance. Use these actions as needed.
Action: Summarize Memory [SUMMARIZE-MEMORY]
- [core] read all
files and update.memory/
to reflect current epic, active phases, and next milestones. Prune incorrect or outdated information..memory/summary.md - [core] ensure
is concise and easy to understand at a glance..memory/summary.md
Action: Clean Up [CLEAN-UP]
- [tasks] move completed tasks to
directory..memory/archive/ - [learning] ensure all significant learnings are documented in
files..memory/learning-<8_char_hash_id>-<title>.md - [archive] move completed phases to
directory..memory/archive/
Action: Validate Memory [VALIDATE-MEMORY]
- [core] run the validation script to ensure all memory files comply with the frontmatter rules:
./scripts/validate.ts
Action: Refine Constitution [REFINE-CONSTITUTION]
- [core] review and update
based on user input..memory/constitution.md - [core] ensure all team members are aware of any changes to the constitution.
- [core]
is never updated unless asked to do so by a human..memory/constitution.md - [core] when updating, ensure changes are commited separately with clear commit messages using
as the scope.memory/constitution
Status Action [STATUS]
- [core] provide a summary of the current epic, active phases, and next milestones based on
..memory/summary.md - [core] list outstanding tasks from
..memory/todo.md - [core] contextalise the status with an ascii diagram that shows where in the state machine the task work relates to.
Planning Stages
Stage: Ideation [IDEA]
- [core] every project MUST start with an epic definition before phases are created
- [core] when initialising, create a codemap of exiting codebase, ensure there is a state machine ascii diagram representing your understanding of the codebase in
..memory/knowledge-codemap.md
Stage: Epic Definition [EPIC]
- [epic] EVERY project must begin with an epic that defines the overall goal and scope
- [epic] each epic should be documented in
files.memory/epic-<8_char_hash_id>-<title>.md - [epic] epics must include: vision/goal, success criteria, list of phases, overall timeline, and dependencies
- [epic] all phases MUST link to their parent epic
- [epic] only ONE epic should be active at a time unless explicitly approved by human
- [epic] epic files are never archived until all phases are complete and learning is distilled
Stage: Research [RESEARCH]
- [research] before starting any research, read
and any.memory/summary.md
to understand what has already been discovered. Do not duplicate research..memory/**/learning**.md - [research] if existing research is found. link to it in document that requires it, do not copy or duplicate it.
- [research] break down research into specific, answerable questions.
- [research] scan archived memory files in
for relevant information before searching externally. if relevant information is found, link to it rather than duplicating it..memory/ - [research] use_skill(brave_search) with it's
andsearch
extraction scripts to gather information. If this fails, usecontent
cli to manually search and extract content.lynx - [research] critically evaluate sources for credibility, relevance, and bias. Link these items to a footnote that provides a reason and score out of 10.
- [research] Record findings clearly and concisely in
files. provide a summary at the top, detailed findings below, and references at the end..memory/research-<8_char_hash_id>-<title>.md - [research] Research tasks are always delegated to the "Deep Researcher SubAgent". Use what ever subagent, subthread, or delegation tool you have available to do this.
- [research] If you are a subagent, then focus only on the task you've been given. Do not deviate or delegate further.
Stage: Phase Planning [PHASE-PLANNING]
- [phase] each major step or milestone in the project should be documented in
files.memory/phase-<8_char_hash_id>-<title>.md - [phase] phases MUST link to their parent epic in frontmatter or header
- [phase] phases should have clear start and end criteria aligned with epic goals
- [phase] do not treat phases as a task list, but rather as a higher-level overview of progress. Do not include checklist items in phase files.
[!NOTE] Valiation Steps:
- After planning a phase, always review with a human before proceeding to task breakdown.
- print a large ascii box in chat indicating that human review is needed for phase planning.
- wait for human to confirm before proceeding.
Stage: Task Breakdown [TASK-BREAKDOWN]
- [tasks] each task should be documented in
files, including objectives, steps to take, outcome expected..memory/task-<8_char_hash_id>-<title>.md - [tasks] tasks should be specific, measurable, achievable, relevant, and time-bound (SMART).
- [tasks] prioritize tasks based on impact and urgency.
- [tasks] break down tasks into manageable phases, each with clear objectives and deliverables.
- [tasks] use
to track remaining tasks. This file only contains links to.memory/todo.md
files. [CRITICAL] keep.memory/task-<8_char_hash_id>-<title>.md
up to date at every step..memory/todo.md
Execution Stages
Stage: Task Execution [TASK-EXECUTION]
- [tasks] always update checklists and progress in the task file. [CRITICAL] keep
up to date at every step..memory/todo.md - [tasks] when finishing a task, document the outcome and any lessons learned in the relevant
file..memory/task-<8_char_hash_id>-<title>.md - [core] Always keep
up to date with current epic, active phases, and next milestones. Prune incorrect or outdated information..memory/summary.md
Stage: Learning Distillation [LEARNING-DISTILLATION]
- [learning] any significant insights, lessons learned, or best practices should be documented in
files for future reference..memory/learning-<8_char_hash_id>-<title>.md - [learning] Learning files are never archived or deleted. [CRITICAL] always keep learning files.
Completion Stages
Stage: Phase Completion [PHASE-COMPLETION]
- [phase] when finishing a phase, document the outcome and any lessons learned in the relevant
file..memory/phase-<8_char_hash_id>-<title>.md - [phase] when finishing a phase, compact relevant learnings and outcomes from research, phase and tasks into
files. clean up.memory/learning-<8_char_hash_id>-<title>.md
and.memory/summary.md
../memory/todo.md - [archive] archive completed phases by moving their files to
directory..memory/archive/
Stage: Epic Completion [EPIC-COMPLETION]
- [epic] epic files are never archived until all phases are complete and learning is distilled
- [archive] do NOT archive epic files until all phases are complete and learnings distilled. epics much have a link to distilled learnings before archiving.
- [archive] update
to reflect archived phases and completed epics..memory/summary.md - [archive] do NOT archive learning or research files. These are golden knowledge for future projects.
[!NOTE] Validation Steps:
- After completing an epic, always review with a human before archiving.
- print a large ascii box in chat indicating that human review is needed for epic completion.
- wait for human to confirm before proceeding.
General Operating Steps
- [CRITICAL] If no epic exists, create one before any other work. Define vision, success criteria, and planned phases.
- update
to indicate which epic and phase is being worked on and by whom (use the session id to indicate this, not the agent name)..memory/team.md - If there are any
tasks in[NEEDS-HUMAN]
, stop and wait for human intervention..memory/todo.md - follow the research guidelines above.
- when you are blocked by actions that require human intervention, create a task in
listing what needs to be done by a human. tag it with.memory/todo.md
on the task line.[NEEDS-HUMAN] - after completing a phase, update
and prune other files as necessary..memory/summary.md - after completing an epic, distill all learnings, update
, and archive completed phases..memory/summary.md - commit changes with clear messages referencing relevant files.
Human Interaction
- If you need clarification or additional information, please ask a human for assistance.
- print a large ascii box in chat indicating that human intervention is needed, and list the tasks from
inside the box..memory/todo.md - wait for human to complete the tasks before proceeding.