Plan Format

Learn how to structure plans for submission to Kindship via the CLI.

Plans submitted via the CLI follow a hierarchical structure that maps to Kindship's planning system.

Hierarchy

OBJECTIVE (Vision/Goal)
└── PROJECT (Major milestone)
    └── TASK (Actionable work item)

Markdown Format

The CLI accepts plans in Markdown format with specific heading levels:

# Objective: Build User Authentication

## Project: Implement OAuth Providers

### Task: Add Google OAuth
- Configure Google Cloud credentials
- Implement sign-in flow
- Add callback handler

### Task: Add GitHub OAuth
- Configure GitHub OAuth app
- Implement sign-in flow
- Add callback handler

## Project: Add Session Management

### Task: Implement JWT tokens
- Generate access tokens
- Handle token refresh
- Secure storage

JSON Format

For programmatic submission, use JSON:

{
  "objective": {
    "title": "Build User Authentication",
    "description": "Implement secure user authentication system"
  },
  "projects": [
    {
      "title": "Implement OAuth Providers",
      "tasks": [
        {
          "title": "Add Google OAuth",
          "description": "Configure and implement Google OAuth sign-in",
          "success_criteria": [
            "Users can sign in with Google",
            "Callback handles errors gracefully"
          ]
        }
      ]
    }
  ]
}

Submitting Plans

From File

kindship plan submit my-plan.md
kindship plan submit plan.json

From Stdin

cat plan.md | kindship plan submit -

With Custom Title

kindship plan submit plan.md --title "Q1 Feature Development"

Task Properties

Each task can include:

PropertyDescription
titleShort task name
descriptionDetailed explanation
success_criteriaList of completion criteria
dependenciesIDs of tasks that must complete first
priorityhigh, medium, or low
estimated_effortsmall, medium, or large

Dependencies

Tasks can depend on other tasks:

### Task: Deploy to staging
Depends on: setup-ci, write-tests

- Configure staging environment
- Run deployment pipeline

The CLI will ensure tasks are executed in the correct order based on dependencies.

Viewing Plans

After submission, view your plan:

kindship plan list
kindship plan show <plan-id>