From 3ce23910f6e56fba1ee8c22d40b97a5b1beb5db4 Mon Sep 17 00:00:00 2001 From: Adam Neto Date: Sun, 22 Feb 2026 17:36:59 -0500 Subject: [PATCH 1/2] Add pddl package to planutils --- planutils/packages/pddl/install | 6 +++ planutils/packages/pddl/manifest.json | 54 +++++++++++++++++++++++++++ planutils/packages/pddl/run | 4 ++ planutils/packages/pddl/uninstall | 4 ++ 4 files changed, 68 insertions(+) create mode 100755 planutils/packages/pddl/install create mode 100644 planutils/packages/pddl/manifest.json create mode 100755 planutils/packages/pddl/run create mode 100755 planutils/packages/pddl/uninstall diff --git a/planutils/packages/pddl/install b/planutils/packages/pddl/install new file mode 100755 index 0000000..91ff899 --- /dev/null +++ b/planutils/packages/pddl/install @@ -0,0 +1,6 @@ +#!/usr/bin/env bash +set -euo pipefail + +python3 -m pip install --no-cache-dir -U pddl + +command -v pddl >/dev/null diff --git a/planutils/packages/pddl/manifest.json b/planutils/packages/pddl/manifest.json new file mode 100644 index 0000000..f8403f7 --- /dev/null +++ b/planutils/packages/pddl/manifest.json @@ -0,0 +1,54 @@ +{ + "name": "PDDL: PDDL 3.1 syntax validator", + "description": "Tools for parsing and syntax-validating PDDL domains, problems, and plans using the AI-Planning/pddl parser.", + "homepage": "https://github.com/AI-Planning/pddl", + "install-size": "1M", + "dependencies": [], + "runnable": true, + "endpoint": { + "services": { + "validate_domain": { + "args": [ + { + "name": "domain", + "type": "file", + "description": "domain file to validate" + } + ], + "call": "pddl domain {domain} > pddl_domain.log 2>&1", + "return": { + "type": "log", + "files": "pddl_domain.log" + } + }, + "validate_problem": { + "args": [ + { + "name": "problem", + "type": "file", + "description": "problem file to validate" + } + ], + "call": "pddl problem {problem} > pddl_problem.log 2>&1", + "return": { + "type": "log", + "files": "pddl_problem.log" + } + }, + "validate_plan": { + "args": [ + { + "name": "plan", + "type": "file", + "description": "plan file to validate" + } + ], + "call": "pddl plan {plan} > pddl_plan.log 2>&1", + "return": { + "type": "log", + "files": "pddl_plan.log" + } + } + } + } +} \ No newline at end of file diff --git a/planutils/packages/pddl/run b/planutils/packages/pddl/run new file mode 100755 index 0000000..092eabe --- /dev/null +++ b/planutils/packages/pddl/run @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -euo pipefail + +exec pddl "$@" diff --git a/planutils/packages/pddl/uninstall b/planutils/packages/pddl/uninstall new file mode 100755 index 0000000..57f7e3c --- /dev/null +++ b/planutils/packages/pddl/uninstall @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -euo pipefail + +python3 -m pip uninstall -y pddl || true From f8094100549ef36ae343ed17db2a560c162c40d9 Mon Sep 17 00:00:00 2001 From: Adam Neto Date: Tue, 24 Feb 2026 00:20:19 -0500 Subject: [PATCH 2/2] Newer version of pddl manifest --- planutils/packages/pddl/manifest.json | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/planutils/packages/pddl/manifest.json b/planutils/packages/pddl/manifest.json index f8403f7..64089de 100644 --- a/planutils/packages/pddl/manifest.json +++ b/planutils/packages/pddl/manifest.json @@ -15,35 +15,50 @@ "description": "domain file to validate" } ], - "call": "pddl domain {domain} > pddl_domain.log 2>&1", + "call": "pddl {domain} > pddl_domain.log 2>&1", "return": { "type": "log", "files": "pddl_domain.log" } }, - "validate_problem": { + "validate_task": { "args": [ + { + "name": "domain", + "type": "file", + "description": "domain file to validate" + }, { "name": "problem", "type": "file", "description": "problem file to validate" } ], - "call": "pddl problem {problem} > pddl_problem.log 2>&1", + "call": "pddl {domain} {problem} > pddl_task.log 2>&1", "return": { "type": "log", - "files": "pddl_problem.log" + "files": "pddl_task.log" } }, "validate_plan": { "args": [ + { + "name": "domain", + "type": "file", + "description": "domain file to validate" + }, + { + "name": "problem", + "type": "file", + "description": "problem file to validate" + }, { "name": "plan", "type": "file", "description": "plan file to validate" } ], - "call": "pddl plan {plan} > pddl_plan.log 2>&1", + "call": "pddl {domain} {problem} {plan} > pddl_plan.log 2>&1", "return": { "type": "log", "files": "pddl_plan.log"