---
name: Goal Mode
slug: goal-mode
category: AI Engineering
description: Goal Mode tracks a single long-running objective across multiple turns. Use it for complex tasks that need continuous progress until completion, blocking, or reset.
github: "https://github.com/KonghaYao/peri/tree/main/peri-middlewares/src/skills/builtin/skills/goal"
language: Rust
stars: 163
forks: 30
install: "npx degit https://github.com/KonghaYao/peri/tree/main/peri-middlewares/src/skills/builtin/skills/goal ~/.claude/skills/goal"
installs_to: ~/.claude/skills/goal
source_path: peri-middlewares/src/skills/builtin/skills/goal/SKILL.md
collection_size: 20
category_size: 3670
collection_url: "https://dirskills.com/collections/KonghaYao/peri"
added: 2026-09-08T05:35:46.044Z
last_synced: 2026-09-08T05:35:46.044Z
canonical_url: "https://dirskills.com/skills/goal-mode"
---

# Goal Mode

Goal Mode tracks a single long-running objective across multiple turns. Use it for complex tasks that need continuous progress until completion, blocking, or reset.

**Install:**

```bash
npx degit https://github.com/KonghaYao/peri/tree/main/peri-middlewares/src/skills/builtin/skills/goal ~/.claude/skills/goal
```

## README

# Goal Mode

## When to Use

- The user gives a complex task that requires multiple rounds to complete
- The user says "keep going until done", "don't stop midway", "until X"

## How to Use

1. Call the `goal` tool with action=create and a specific, verifiable objective
2. Work continuously until the goal is achieved
3. Achieved → `goal` tool, action=complete
4. Blocked by something unsolvable → `goal` tool, action=block, reason=why you're blocked
5. Need to abandon/reset the goal → `goal` tool, action=clear (releases the singleton slot, works on terminal states)
6. Check current goal status anytime with action=get

## Important Constraints

- **Objectives must be specific and verifiable**: "improve code" is bad, "raise test coverage to 80%" is good
- **complete is verified**: The system uses an auxiliary LLM to check if you actually achieved the goal. If verification fails, you'll get the reason back
- **block is a distress signal**: Only use when truly unable to continue (missing permissions, missing dependencies)
- **Self-driven after creation**: Once a goal is created, you'll receive a reminder after each turn. You must decide: continue / complete / block / clear
- **Singleton**: Only one goal at a time. Use action=clear to release the slot before creating a new one
