{"id":28095,"library":"pyperplan","title":"Pyperplan","description":"A lightweight STRIPS planner implemented in pure Python. No external solver required. Current version 2.1 (2022-01-17) with Python >=3.6 support. Maintenance-only status; last release 2022.","status":"maintenance","version":"2.1","language":"python","source_language":"en","source_url":"https://github.com/aibasel/pyperplan","tags":["planning","STRIPS","PDDL","AI"],"install":[{"cmd":"pip install pyperplan","lang":"bash","label":"Install from PyPI"}],"dependencies":[],"imports":[{"note":"Direct import of pyperplan gives module object, not the function.","wrong":"import pyperplan","symbol":"search_plan","correct":"from pyperplan import search_plan"},{"note":"","wrong":"","symbol":"grounding","correct":"from pyperplan.grounding import ground"},{"note":"","wrong":"","symbol":"heuristic","correct":"from pyperplan.heuristics import hmax"}],"quickstart":{"code":"from pyperplan import search_plan\nfrom pyperplan.grounding import ground\nfrom pyperplan.heuristics import hmax\nfrom pyperplan.pddl import parse_domain, parse_problem\n\ndomain = parse_domain('domain.pddl')\nproblem = parse_problem('problem.pddl')\ntask = ground(domain, problem)\nplan, _ = search_plan(task, hmax)\nprint('; '.join(plan))","lang":"python","description":"Load a PDDL domain and problem file, ground the task, and find a plan using the hmax heuristic."},"warnings":[{"fix":"Ensure your domain and problem files are STRIPS-only.","message":"pyperplan only supports STRIPS (no ADL, no negative preconditions, no conditional effects). Using non-STRIPS PDDL will silently produce incorrect grounding.","severity":"gotcha","affected_versions":"all"},{"fix":"Consider forking or switching to alternatives like Tarski or Pyperplan fork if updates are needed.","message":"The package is no longer actively maintained. The last release (2.1) is from January 2022. Python versions above 3.10 may have compatibility issues with outdated dependencies.","severity":"gotcha","affected_versions":">=2.0"}],"env_vars":null,"last_verified":"2026-05-09T00:00:00.000Z","next_check":"2026-08-07T00:00:00.000Z","problems":[{"fix":"Use 'from pyperplan import search_plan'","cause":"Incorrect import: importing the top-level module instead of the function.","error":"AttributeError: module 'pyperplan' has no attribute 'search_plan'"},{"fix":"Run 'pip install pyperplan'","cause":"The package is not installed.","error":"ModuleNotFoundError: No module named 'pyperplan'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}