๐Ÿƒ
default governance

Software Sprint

A pm-cli workspace preset for software engineering teams running two-week sprints. Designed for teams that want structured governance, sprint tracking, and clear item hierarchies without heavyweight p

default Encourages completeness but doesn't block. Warnings on incomplete items.

Templates

bugepicfeaturetask

Install as extension

$ pm install github.com/unbraind/pm-presets --project
Then apply: pm sprint-setup

Settings

{
  "id_prefix": "sprint-",
  "author_default": "",
  "governance": {
    "preset": "default",
    "ownership_enforcement": "warn",
    "create_mode_default": "progressive",
    "close_validation_default": "warn",
    "metadata_profile": "core"
  },
  "validation": {
    "sprint_release_format": "strict_error",
    "parent_reference": "warn"
  },
  "item_types": {
    "definitions": [
      {
        "name": "Epic",
        "description": "Large body of work spanning multiple sprints"
      },
      {
        "name": "Feature",
        "description": "A deliverable feature within a sprint"
      },
      {
        "name": "Task",
        "description": "A concrete unit of work within a sprint"
      },
      {
        "name": "Issue",
        "description": "A defect or regression to be fixed"
      }
    ]
  },
  "testing": {
    "record_results_to_items": true
  },
  "search": {
    "mode": "keyword"
  },
  "calendar": {
    "default_view": "week",
    "first_day_of_week": 1
  },
  "telemetry": {
    "enabled": false
  }
}

Template Files

๐Ÿ“„ bug.json JSON
{
  "name": "bug",
  "description": "A defect or regression discovered in testing or production.",
  "defaults": {
    "type": "Issue",
    "status": "open",
    "priority": "high",
    "tags": [
      "bug"
    ],
    "metadata": {
      "sprint": "",
      "severity": "medium",
      "environment": "",
      "steps_to_reproduce": "",
      "expected_behavior": "",
      "actual_behavior": "",
      "assignee": "",
      "pr_link": ""
    }
  }
}
๐Ÿ“„ epic.json JSON
{
  "name": "epic",
  "description": "Large body of work spanning multiple sprints. Groups related features under a common goal.",
  "defaults": {
    "type": "Epic",
    "status": "open",
    "priority": "medium",
    "tags": [
      "epic"
    ],
    "metadata": {
      "objective": "",
      "success_criteria": "",
      "target_quarter": "",
      "stakeholder": "",
      "estimated_sprints": ""
    }
  }
}
๐Ÿ“„ feature.json JSON
{
  "name": "feature",
  "description": "A deliverable feature scoped to a sprint. Must be linked to a parent Epic.",
  "defaults": {
    "type": "Feature",
    "status": "open",
    "priority": "medium",
    "tags": [
      "feature"
    ],
    "metadata": {
      "sprint": "",
      "acceptance_criteria": "",
      "design_link": "",
      "story_points": "",
      "reviewer": ""
    }
  }
}
๐Ÿ“„ task.json JSON
{
  "name": "task",
  "description": "A concrete unit of work assignable to one engineer within a sprint.",
  "defaults": {
    "type": "Task",
    "status": "open",
    "priority": "medium",
    "tags": [
      "task"
    ],
    "metadata": {
      "sprint": "",
      "estimate_hours": "",
      "assignee": "",
      "pr_link": "",
      "blocked_by": ""
    }
  }
}

Documentation

A pm-cli workspace preset for software engineering teams running two-week sprints. Designed for teams that want structured governance, sprint tracking, and clear item hierarchies without heavyweight process overhead.

What This Preset Configures

Settings (settings.json)

Setting Value Rationale
id_prefix sprint- Namespaces all items for easy filtering
governance.preset default Enforces item structure without blocking velocity
governance.ownership_enforcement warn Encourages ownership; doesn't block unassigned items
governance.close_validation_default warn Flags incomplete items at close time
governance.metadata_profile core Captures sprint, points, and reviewer without full overhead
validation.sprint_release_format strict_error Sprint names must follow a consistent format (e.g. 2024-S01)
validation.parent_reference warn Warns when tasks/features lack a parent Epic
testing.record_results_to_items true Test results are linked to items for traceability

Templates

Template Type Purpose
epic Epic Quarter-level goals grouping multiple features
feature Feature Sprint-scoped deliverable linked to an Epic
task Task Concrete engineering work unit
bug Issue Defect or regression report

Workflow Overview

Epic (quarter goal)
  โ””โ”€โ”€ Feature (sprint deliverable)
        โ””โ”€โ”€ Task / Issue (day-to-day work)
  1. At the start of a quarter, create Epics for major goals using pm create --template epic.
  2. During sprint planning, create Features scoped to the sprint (set sprint metadata field) and link them to their parent Epic.
  3. Break Features into Tasks and Issues as work is discovered.
  4. Close items with pm close โ€” warnings will fire if metadata is incomplete.
  5. Sprint names must follow a recognized format (strict validation); use formats like 2024-S01 or sprint-14.

Installation

Run the setup script from your repository root after running pm init:

bash .agents/pm/presets/software-sprint/setup.sh

Or copy files manually:

cp presets/software-sprint/settings.json .agents/pm/settings.json
cp presets/software-sprint/templates/*.json .agents/pm/templates/

Customization Tips

  • Set author_default in settings.json to your team bot or CI user for automated mutations.
  • Adjust sprint_release_format to warn if your sprint naming is inconsistent during rollout.
  • Add a qa_signoff field to the feature template metadata if your team requires QA approval before closing.
All presets View source on GitHub