Files
firefrost-operations-manual/docs/skills/task-creation/SKILL.md
Claude 1fe169ba9c feat(skill): Create task-creation skill
Task management guidelines for Decap CMS:
- File structure (tasks-index vs tasks directories)
- Required frontmatter fields and valid values
- Priority levels with colors (P0-P4)
- Task body template with sections
- When to create full specs vs simple tasks
- Common tags for filtering
- Mobile task manager compatibility notes
- Task creation checklist

Updated SKILLS-INDEX.md with new skill entry.

Chronicler: #68
2026-04-08 06:48:00 +00:00

7.2 KiB

name, description
name description
task-creation Create and manage Firefrost Gaming tasks properly. Use this skill whenever: - Creating a new task (always use this format!) - Updating task status or priority - Moving tasks between states - Unsure about task file structure or frontmatter - Adding implementation specs for a task Tasks appear in Decap CMS at firefrostgaming.com/admin. This skill ensures proper formatting so tasks render correctly in the mobile task manager and CMS interface.

Task Creation Skill

How to create, structure, and manage tasks in the Firefrost operations manual.


📁 TASK SYSTEM STRUCTURE

firefrost-operations-manual/
├── docs/tasks-index/          # High-level task cards (Decap CMS)
│   ├── task-026-modpackchecker.md
│   ├── task-087-arbiter-lifecycle.md
│   └── task-099-claude-projects.md
├── docs/tasks/                # Full implementation specs
│   ├── task-026-modpackchecker/
│   │   ├── README.md
│   │   └── phase-5-spec.md
│   └── task-094-restart-scheduler/
│       └── full-spec.md
├── BACKLOG.md                 # Historical reference only
└── BLOCKERS.md                # Historical (launch complete)

Key Points

  • docs/tasks-index/ — Individual files for each task, shown in Decap CMS
  • docs/tasks/ — Detailed specs when needed (complex tasks only)
  • BACKLOG.md — Historical, don't add new tasks here
  • Tasks auto-appear at firefrostgaming.com/admin🔥 TASKS

📝 TASK FILE FORMAT

Required Frontmatter

---
task_number: 100
title: Task Title Here
status: Planned
priority: P2-Medium
is_blocker: false
owner: Michael
tags:
  - category
estimated_hours: 4
---

Frontmatter Fields

Field Required Values
task_number Yes Integer (next available number)
title Yes Short descriptive title
status Yes Planned, In Progress, Blocked, Complete
priority Yes P0-Blocker, P1-High, P2-Medium, P3-Low, P4-Personal
is_blocker Yes true or false
owner Yes Michael, Meg, Holly, Trinity
tags Yes Array of category tags
estimated_hours No Integer estimate

Priority Colors (in UI)

Priority Color Use For
P0-Blocker 🔴 Red Launch-blocking, critical path
P1-High 🟠 Orange Important, do soon
P2-Medium 🟡 Yellow Standard priority
P3-Low 🔵 Blue Nice to have
P4-Personal 🟣 Purple Michael's personal projects

📋 TASK BODY TEMPLATE

After the frontmatter, add markdown body:

## Overview

Brief description of what this task accomplishes and why it matters.

## Current State

What exists now, what's been done, any context.

## Next Steps

- [ ] Step 1
- [ ] Step 2
- [ ] Step 3

## Links

- Full spec: `docs/tasks/task-XXX-name/README.md`
- Related: Task #YY, Task #ZZ

COMPLETE EXAMPLE

File: docs/tasks-index/task-100-example-task.md

---
task_number: 100
title: Example Task Title
status: Planned
priority: P2-Medium
is_blocker: false
owner: Michael
tags:
  - infrastructure
  - automation
estimated_hours: 8
---

## Overview

This task implements XYZ feature to improve ABC workflow.

## Current State

- Feature does not exist yet
- Related system ABC is in place
- Dependency on Task #87 (not blocking)

## Next Steps

- [ ] Design the architecture
- [ ] Implement core functionality
- [ ] Test with production data
- [ ] Deploy to Command Center

## Links

- Full spec: `docs/tasks/task-100-example/README.md`
- Related: Task #87 (Arbiter lifecycle)

🔢 FINDING THE NEXT TASK NUMBER

Before creating a task, find the next available number:

ls docs/tasks-index/ | grep -oP 'task-\K\d+' | sort -n | tail -1

Add 1 to the highest number found.

Current highest (as of April 8, 2026): Check the directory, likely in the 90s.


📂 WHEN TO CREATE FULL SPECS

Simple Tasks (index file only)

  • Single-session work
  • Clear scope
  • No complex implementation details
  • Example: "Update footer text"

Complex Tasks (index + full spec)

  • Multi-phase work
  • Database schema changes
  • API design needed
  • Multiple files/systems affected
  • Example: "ModpackChecker Phase 5"

Full Spec Structure

docs/tasks/task-XXX-name/
├── README.md           # Overview, architecture
├── phase-1-spec.md     # Phase 1 details
├── phase-2-spec.md     # Phase 2 details
└── database-schema.md  # If applicable

🔄 UPDATING TASK STATUS

When task status changes:

  1. Edit the frontmatter — Change status field
  2. Update body — Add completion notes or blockers
  3. Commit with descriptive message

Status Transitions

Planned → In Progress → Complete
              ↓
           Blocked → In Progress → Complete

Commit Message Format

docs(task): Update Task #XX status to [STATUS]

[Brief description of what changed]

Chronicler: #YY

⚠️ COMMON MISTAKES

Wrong Correct
Adding tasks to BACKLOG.md Create file in docs/tasks-index/
Missing frontmatter fields Include all required fields
Wrong priority format Use exact format: P2-Medium
Spaces in filename Use hyphens: task-100-my-task.md
Forgetting is_blocker Always include, even if false

🏷️ COMMON TAGS

Use consistent tags for filtering:

Tag Use For
infrastructure Server, hosting, DevOps
arbiter Arbiter backend work
website 11ty site, Cloudflare Pages
discord Discord bot, roles, automation
marketing FOMO, social, content
documentation Docs, standards, manuals
automation n8n, scripts, scheduled tasks
panel Pterodactyl, Blueprint, MVC
accessibility Medical accommodations
personal Michael's personal projects

📱 MOBILE TASK MANAGER

Tasks appear at: firefrostgaming.com/admin/mobile.html

Features:

  • Card-based UI
  • Priority color coding
  • Filter tabs by status
  • Quick-edit dropdowns
  • Touch-optimized (44px+ targets)

For tasks to appear correctly:

  • Frontmatter must be valid YAML
  • All required fields present
  • File in docs/tasks-index/ directory

🔗 LINKING TASKS

In Task Bodies

Related: Task #87, Task #92
Depends on: Task #26 (blocked until complete)
Blocks: Task #99

In Commit Messages

feat(arbiter): Implement webhook retry logic

Adds exponential backoff for failed webhooks.

Task: #87
Chronicler: #68

TASK CREATION CHECKLIST

Before committing a new task:

  • File in docs/tasks-index/ (not BACKLOG.md)
  • Filename format: task-XXX-short-name.md
  • All required frontmatter fields present
  • task_number is unique and sequential
  • priority uses exact format (e.g., P2-Medium)
  • status is valid value
  • is_blocker is true or false (not missing)
  • tags is an array (even if single tag)
  • Body has Overview and Next Steps sections
  • Commit message references task number

Fire + Frost + Foundation = Where Love Builds Legacy 💙🔥❄️