multi-goal-navigation-bt

Builds Nav2 behavior trees for sequencing multiple navigation goals and waypoint following.

Updated Aug 16, 2026
One-click install
npx skills add https://github.com/three1324/yeonjinautomotive --skill multi-goal-navigation-bt-three1324
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: multi-goal-navigation-bt
Source: https://github.com/three1324/yeonjinautomotive/tree/main/.claude/skills/multi-goal-navigation-bt
Command: npx skills add https://github.com/three1324/yeonjinautomotive --skill multi-goal-navigation-bt-three1324

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Designing robots that must visit multiple goals in sequence is tricky: you must choose between NavigateThroughPoses, sequential NavigateToPose calls, and the FollowWaypoints action server, each with different trade-offs for per-waypoint tasks, failure handling, and path optimality. This Skill provides proven BT.CPP v4 XML patterns for each approach so you avoid common pitfalls like all-or-nothing failures and patrol restarts. ## Core Features & Use Cases - Three Multi-Goal Strategies: Guidance and XML for NavigateThroughPoses (single optimized path), sequential NavigateToPose with interleaved per-waypoint tasks, and Nav2's FollowWaypoints with task executor plugins like WaitAtWaypoint and PhotoAtWaypoint. - Recovery and Resilience Patterns: Per-waypoint Retry wrappers, ForceSuccess to skip unreachable goals, RecoveryNode subtrees with costmap clearing, and SequenceWithMemory so interrupted patrols resume from the last incomplete waypoint. - Dynamic Goal Handling: Patterns for updating goal lists from ROS 2 topics via the blackboard and index-based waypoint cycling with Script nodes. - Use Case: Build a patrol robot that visits the living room, kitchen, and garage, taking a photo or sensor reading at each stop, skipping unreachable rooms, and resuming correctly after a battery-check interruption. ## Quick Start Ask the AI to create a Nav2 behavior tree that patrols four waypoints with a wait and spin at each stop and recovery behavior on navigation failure.

Frequently Asked Questions about multi-goal-navigation-bt

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I navigate to multiple goals in Nav2?

Nav2 offers three approaches: NavigateThroughPoses sends all goals for one optimized path, sequential NavigateToPose visits each goal with full plan-follow cycles, and the FollowWaypoints action server provides built-in waypoint following with task plugins.

NavigateThroughPoses vs FollowWaypoints: which should I use?

NavigateThroughPoses produces a single globally optimized path but fails entirely if one waypoint is unreachable. FollowWaypoints supports per-waypoint task plugins and can skip failed waypoints with stop_on_failure set to false.

How do I execute a task at each waypoint in a behavior tree?

Use a Sequence of NavigateToPose calls interleaved with task nodes like Spin, Wait, or custom sensor-check actions. Alternatively, configure FollowWaypoints with plugins such as WaitAtWaypoint or PhotoAtWaypoint.

How do I skip an unreachable waypoint without aborting the patrol?

Wrap the NavigateToPose node in a ForceSuccess decorator, optionally combined with Retry for recovery attempts. The tree then continues to the next waypoint even if that navigation fails.

Why does my patrol restart from the first goal after interruption?

A plain Sequence restarts from the beginning when the tree is re-ticked. Use SequenceWithMemory instead, which remembers completed waypoints and resumes from the last incomplete goal after interruptions like battery checks.