# Skill 110

> Comprehensive tools for working with PDDL files and planning problems, offering a wide range of functionalities for parsing, planning, and validation across different scenarios.

- Skill: `legendtkl/skill-110` (Agent Skill)
- Install (CLI): `npx skillmds@latest add legendtkl/skill-110`
- Raw SKILL.md: https://api.skillmd.com/api/skills/legendtkl/skill-110/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: Proprietary. LICENSE.txt has complete terms
- Author: legendtkl (https://skillmd.com/u/legendtkl)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/legendtkl/skill-110

---


# Requirements for Outputs

## General Guidelines

- PDDL files should be syntactically correct and adhere to general PDDL standards.
- Outputs must be in a usable format, but specifics can vary.
- Validation processes should ensure that outputs meet the specified goals.

---

# PDDL Planning Tools

## 1. Load PDDL Files
### `load-pddl-files(domain_path, problem_path)`

**Description**:  
Loads any PDDL domain and problem files, making them accessible for further processing and planning activities.

**Parameters**:
- `domain_path` (str): Path to the PDDL domain file.
- `problem_path` (str): Path to the PDDL problem file.

**Returns**:
- `files_loaded`: A boolean indicating whether the files were successfully loaded.

**Example**:
```python
files_loaded = load_pddl_files("domain.pddl", "task01.pddl")
```

**Notes**:
- Basic loading functionality that should accommodate different PDDL versions.

## 2. Generate Plans
### `generate-plans(problem)`

**Description**:
Generates plans based on the loaded problem, utilizing various planning strategies.

**Parameters**:
- `problem`: The PDDL problem instance.

**Returns**:
- `plans`: A list of possible plans generated.

**Example**:
```python
plans = generate_plans(problem)
```

**Notes**:
- Supports multiple planning algorithms without specifying which ones are used.

## 3. Save Plans and Outputs
### `save-plans(plans, output_path)`

**Description**:
Saves generated plans to a specified file format, allowing for flexible output options.

**Parameters**:
- `plans`: A list of generated plans.
- `output_path` (str): Path where plans should be saved.

**Example**:
```python
save_plans(plans, "output.plans")
```

**Notes**:
- Output format details are not strictly defined; it could vary widely.

## 4. Validate Plans
### `validate-plans(problem, plans)`

**Description**:
Validates the generated plans against the specified problems to ensure that they are feasible.

**Parameters**:
- `problem`: The original PDDL problem instance.
- `plans`: The generated plans.

**Returns**:
- bool: True if plans are valid, False otherwise.

**Example**:
```python
valid = validate_plans(problem, plans)
```

**Notes**:
- General validation method; specifics of what constitutes a valid plan may vary.

# Example Workflow
```python
# Load PDDL files
files_loaded = load_pddl_files("domain.pddl", "task01.pddl")

# Generate plans
if files_loaded:
    plans = generate_plans(problem)

# Validate plans
if not validate_plans(problem, plans):
    raise ValueError("One or more plans are invalid")

# Save plans
save_plans(plans, "output.plans")
```
# Notes

- This skill set provides foundational tools but lacks specificity for particular planning scenarios.
- Suitable for users looking for a broad overview of PDDL planning capabilities.
