# Goals

> Create, list, update, and complete goals, milestones, and tasks with hierarchical tracking

- Skill: `tashfeenahmed/goals` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add tashfeenahmed/goals`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tashfeenahmed/goals/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tashfeenahmed (https://skillmd.com/u/tashfeenahmed)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/tashfeenahmed/goals

---


# Goals Skill

Manage hierarchical goals with a simple kanban workflow (backlog -> active -> completed).

## Structure

Goals are organized hierarchically:
- **Goals** - High-level objectives (e.g., "Learn Spanish")
- **Milestones** - Major checkpoints within a goal (e.g., "Complete Duolingo basics")
- **Tasks** - Specific action items within a milestone (e.g., "Finish lesson 5")

## When to Use

Use the goals skill for:

- **Creating goals**: "I want to learn Python this year"
- **Breaking down goals**: Add milestones and tasks to goals
- **Tracking progress**: View current status and progress percentages
- **Status updates**: Mark items as active or completed
- **Proactive check-ins**: Set up periodic reminders for goal progress

## Input Format

The skill accepts JSON arguments via the `SKILL_ARGS` environment variable:

### Create a goal

```json
{
  "action": "create",
  "type": "goal",
  "title": "Learn Spanish",
  "checkin": "weekly",
  "due": "2024-12-31"
}
```

### Create a milestone

```json
{
  "action": "create",
  "type": "milestone",
  "title": "Complete Duolingo basics",
  "parent_id": "goal_abc123"
}
```

### Create a task

```json
{
  "action": "create",
  "type": "task",
  "title": "Finish lessons 1-5",
  "parent_id": "milestone_def456"
}
```

### List goals

```json
{
  "action": "list",
  "type": "goal",
  "status": "active"
}
```

`list` defaults to naturally active items. Age, due date, lifecycle, and genuine
topic relevance determine activation. Pass the user's topic/name as `query` so
a relevant older goal can return naturally; unrelated old goals remain quiet.
`scope: "all"` is only the complete durable inventory and does not affect storage.

### Show goal hierarchy

```json
{
  "action": "show",
  "id": "goal_abc123"
}
```

### Complete an item

```json
{
  "action": "complete",
  "id": "task_xyz789"
}
```

### Activate an item

```json
{
  "action": "activate",
  "id": "goal_abc123"
}
```

### Reopen a completed item

```json
{
  "action": "reopen",
  "id": "task_xyz789"
}
```

### Update an item

```json
{
  "action": "update",
  "id": "goal_abc123",
  "title": "Master Spanish",
  "due": "2025-06-30"
}
```

### Delete an item

```json
{
  "action": "delete",
  "id": "goal_abc123"
}
```

## Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `action` | string | Yes | One of: create, list, show, activate, complete, reopen, update, delete |
| `type` | string | For create/list | Item type: goal, milestone, or task |
| `title` | string | For create | Title/description of the item |
| `parent_id` | string | For milestone/task | Parent ID (goal for milestone, milestone for task) |
| `id` | string | For show/activate/complete/reopen/update/delete | Item ID |
| `status` | string | For list/update | Filter or set: backlog, active, completed |
| `due` | string | Optional | Due date (parsed naturally) |
| `checkin` | string | For goals | Check-in frequency: daily, weekly, biweekly, monthly, none |
| `tags` | array | Optional | Tags for organization |

## Output Format

```json
{
  "success": true,
  "output": "Goal created: Learn Spanish (ID: abc123)",
  "exitCode": 0
}
```

## Examples

### Set up a learning goal

1. Create the main goal:
```json
{"action": "create", "type": "goal", "title": "Learn Spanish", "checkin": "weekly"}
```

2. Add milestones:
```json
{"action": "create", "type": "milestone", "title": "Complete Duolingo basics", "parent_id": "abc123"}
```

3. Add tasks:
```json
{"action": "create", "type": "task", "title": "Finish lesson 5", "parent_id": "def456"}
```

4. Activate the goal:
```json
{"action": "activate", "id": "abc123"}
```

5. Complete tasks as you progress:
```json
{"action": "complete", "id": "task789"}
```

6. View progress:
```json
{"action": "show", "id": "abc123"}
```

