{"_id":"@agenticros/start-slam","_rev":"5-647a9696b1c3aaab390bf4ba88738ac6","name":"@agenticros/start-slam","dist-tags":{"latest":"0.2.1"},"versions":{"0.1.0":{"name":"@agenticros/start-slam","version":"0.1.0","keywords":["agenticros","ros2","slam","rtabmap","mapping"],"author":{"name":"AgenticROS"},"license":"Apache-2.0","_id":"@agenticros/start-slam@0.1.0","maintainers":[{"name":"chrismatthieu","email":"chris@matthieu.us"}],"homepage":"https://github.com/agenticros/agenticros-skill-start-slam#readme","bugs":{"url":"https://github.com/agenticros/agenticros-skill-start-slam/issues"},"dist":{"shasum":"2b5234bfad7708ad69c1568f626e7a951bc5ad20","tarball":"https://registry.npmjs.org/@agenticros/start-slam/-/start-slam-0.1.0.tgz","fileCount":7,"integrity":"sha512-AE4JWUEpgWs3FqehnNjXVVKOUJQoQ+uQeF+UeeRKngwzai5eYuzmyARX7jNgsJ39VByAQNt1gYruiHbqAoYK8Q==","signatures":[{"sig":"MEYCIQDhc/5xHoRhc4BX9UVkEubEFAAE9V9JsVgJJITSpULjAwIhAJ+1+UNxd+RaHu2m5szfpnYOrij+dMLovYWY2EiU6jHE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17232},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"cde299a8f0f1bed6d561139e5d46a9643e66ae05","scripts":{"build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chrismatthieu","email":"chris@matthieu.us"},"agenticros":{"id":"start-slam","categories":["mapping","navigation"],"description":"Trigger RTAB-Map (or compatible) mapping via std_srvs. Bring up rtabmap_ros yourself; AgenticROS only calls the services.","displayName":"Start SLAM","capabilities":[{"id":"start_slam","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request body (Empty = {})."}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"blocks_base":false,"description":"Resume / start SLAM mapping (std_srvs/Empty on rtabmap/resume by default).","interruptible":true,"implementation":{"kind":"external_ros_node","launch":"rtabmap.launch.py","package":"rtabmap_ros","service":"rtabmap/resume","msg_type":"std_srvs/srv/Empty"}},{"id":"stop_slam","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request body (Empty = {})."}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"blocks_base":false,"description":"Pause SLAM mapping (std_srvs/Empty on rtabmap/pause by default).","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_ros","service":"rtabmap/pause","msg_type":"std_srvs/srv/Empty"}},{"id":"save_map","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request; for std_srvs/Trigger use {}."}},"outputs":{"message":{"type":"string","description":"Trigger response message when applicable."},"success":{"type":"boolean","description":"Whether the service call succeeded."}},"blocks_base":false,"description":"Trigger map save / database dump if your stack exposes a Trigger service (default rtabmap/reset_odom is a placeholder — override service name to match your bringup).","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_ros","service":"rtabmap/publish_map","msg_type":"std_srvs/srv/Empty"}}]},"repository":{"url":"git+https://github.com/agenticros/agenticros-skill-start-slam.git","type":"git"},"_npmVersion":"10.9.8","description":"External ROS-node skill: start / stop / save RTAB-Map (or compatible) SLAM via ROS services.","directories":{},"_nodeVersion":"22.23.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^20.17.0"},"_npmOperationalInternal":{"tmp":"tmp/start-slam_0.1.0_1783638135442_0.4044753770728067","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@agenticros/start-slam","version":"0.1.1","keywords":["agenticros","ros2","slam","rtabmap","mapping"],"author":{"name":"AgenticROS"},"license":"Apache-2.0","_id":"@agenticros/start-slam@0.1.1","maintainers":[{"name":"chrismatthieu","email":"chris@matthieu.us"}],"homepage":"https://github.com/agenticros/agenticros-skill-start-slam#readme","bugs":{"url":"https://github.com/agenticros/agenticros-skill-start-slam/issues"},"dist":{"shasum":"fec88d43d6f7ff8f55dce1de7fac3618cab3412d","tarball":"https://registry.npmjs.org/@agenticros/start-slam/-/start-slam-0.1.1.tgz","fileCount":7,"integrity":"sha512-px+xmIa8i0mqIjRCzD4O1dPBw2BJQQO4n81Y0GqU3S/SeroZDhSy9fMtLdOYju+UacC/FGw/Jh+VRMxlCMzVNw==","signatures":[{"sig":"MEQCIHNPNyH862/dU4vbfav10SzxobKscWkBkqiVlmfIhsM3AiBjBnk7DGHYcfOuiZM9Fi/AUSw+rHA4GA78WAC3Rl9XFQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17232},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"c391e0d1800d9c984a37fd01c6b30cf2ec01034f","scripts":{"build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chrismatthieu","email":"chris@matthieu.us"},"agenticros":{"id":"start-slam","categories":["mapping","navigation"],"description":"Trigger RTAB-Map (or compatible) mapping via std_srvs. Bring up rtabmap_ros yourself; AgenticROS only calls the services.","displayName":"Start SLAM","capabilities":[{"id":"start_slam","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request body (Empty = {})."}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"blocks_base":false,"description":"Resume / start SLAM mapping (std_srvs/Empty on rtabmap/resume by default).","interruptible":true,"implementation":{"kind":"external_ros_node","launch":"rtabmap.launch.py","package":"rtabmap_ros","service":"rtabmap/resume","msg_type":"std_srvs/srv/Empty"}},{"id":"stop_slam","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request body (Empty = {})."}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"blocks_base":false,"description":"Pause SLAM mapping (std_srvs/Empty on rtabmap/pause by default).","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_ros","service":"rtabmap/pause","msg_type":"std_srvs/srv/Empty"}},{"id":"save_map","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request; for std_srvs/Trigger use {}."}},"outputs":{"message":{"type":"string","description":"Trigger response message when applicable."},"success":{"type":"boolean","description":"Whether the service call succeeded."}},"blocks_base":false,"description":"Trigger map save / database dump if your stack exposes a Trigger service (default rtabmap/reset_odom is a placeholder — override service name to match your bringup).","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_ros","service":"rtabmap/publish_map","msg_type":"std_srvs/srv/Empty"}}]},"repository":{"url":"git+https://github.com/agenticros/agenticros-skill-start-slam.git","type":"git"},"_npmVersion":"10.9.8","description":"External ROS-node skill: start / stop / save RTAB-Map (or compatible) SLAM via ROS services.","directories":{},"_nodeVersion":"22.23.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^20.17.0"},"_npmOperationalInternal":{"tmp":"tmp/start-slam_0.1.1_1783638276470_0.48162309380208157","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@agenticros/start-slam","version":"0.1.2","keywords":["agenticros","ros2","slam","rtabmap","mapping"],"author":{"name":"AgenticROS"},"license":"Apache-2.0","_id":"@agenticros/start-slam@0.1.2","maintainers":[{"name":"chrismatthieu","email":"chris@matthieu.us"}],"homepage":"https://github.com/agenticros/agenticros-skill-start-slam#readme","bugs":{"url":"https://github.com/agenticros/agenticros-skill-start-slam/issues"},"dist":{"shasum":"8d7a2a41e91cd0475725dda72f4f753e4077c54f","tarball":"https://registry.npmjs.org/@agenticros/start-slam/-/start-slam-0.1.2.tgz","fileCount":7,"integrity":"sha512-bKqaQz3MEi58dCLvYhdVoMeGjdfAaoMv7SSQStlGBUc6leU8fZw2CsrdFFuwTwtLLS6ivIxbaq4RNBmrFfqBZQ==","signatures":[{"sig":"MEYCIQCJsGZO8iSaz/3XQiSBHjZL82oP4I7iXV4iXno93qfaagIhALPFzOE4YDklI6VXlMBd3zh9ZUpzoZCvLlVMsUprTdv0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18467},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"4562d6d87ce113d75ffe1a851b312b01ca6e7cb6","scripts":{"build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chrismatthieu","email":"chris@matthieu.us"},"agenticros":{"id":"start-slam","categories":["mapping","navigation"],"description":"Trigger RTAB-Map (or compatible) mapping via std_srvs. Bring up rtabmap_ros yourself; AgenticROS only calls the services.","displayName":"Start SLAM","capabilities":[{"id":"start_slam","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request body (Empty = {})."}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"blocks_base":false,"description":"Resume / start SLAM mapping (std_srvs/Empty on rtabmap/resume by default).","interruptible":true,"implementation":{"kind":"external_ros_node","launch":"rtabmap.launch.py","package":"rtabmap_ros","service":"rtabmap/resume","msg_type":"std_srvs/srv/Empty"}},{"id":"stop_slam","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request body (Empty = {})."}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"blocks_base":false,"description":"Pause SLAM mapping (std_srvs/Empty on rtabmap/pause by default).","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_ros","service":"rtabmap/pause","msg_type":"std_srvs/srv/Empty"}},{"id":"save_map","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request; for std_srvs/Trigger use {}."}},"outputs":{"message":{"type":"string","description":"Trigger response message when applicable."},"success":{"type":"boolean","description":"Whether the service call succeeded."}},"blocks_base":false,"description":"Trigger map save / database dump if your stack exposes a Trigger service (default rtabmap/reset_odom is a placeholder — override service name to match your bringup).","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_ros","service":"rtabmap/publish_map","msg_type":"std_srvs/srv/Empty"}},{"id":"load_map","verb":"map","inputs":{"goal":{"type":"object","optional":true,"description":"Alias for request when calling via mission runner."},"request":{"type":"object","optional":true,"description":"Service request body; for std_srvs/Trigger or Empty use {}."}},"outputs":{"message":{"type":"string","description":"Service response message when applicable."},"success":{"type":"boolean","description":"Whether the service call succeeded."}},"blocks_base":false,"description":"Load a previously saved map / database if your stack exposes a Trigger or SetBool service (default rtabmap/trigger_new_map is a placeholder — override service name to match your bringup).","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_ros","service":"rtabmap/trigger_new_map","msg_type":"std_srvs/srv/Empty"}}]},"repository":{"url":"git+https://github.com/agenticros/agenticros-skill-start-slam.git","type":"git"},"_npmVersion":"10.9.8","description":"External ROS-node skill: start / stop / save RTAB-Map (or compatible) SLAM via ROS services.","directories":{},"_nodeVersion":"22.23.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^20.17.0"},"_npmOperationalInternal":{"tmp":"tmp/start-slam_0.1.2_1783640095585_0.2734996586860503","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@agenticros/start-slam","version":"0.2.0","keywords":["agenticros","ros2","slam","rtabmap","mapping"],"author":{"name":"AgenticROS"},"license":"Apache-2.0","_id":"@agenticros/start-slam@0.2.0","maintainers":[{"name":"chrismatthieu","email":"chris@matthieu.us"}],"homepage":"https://github.com/agenticros/agenticros-skill-start-slam#readme","bugs":{"url":"https://github.com/agenticros/agenticros-skill-start-slam/issues"},"dist":{"shasum":"ef6435c27b11becaec8e13d3c9a7e1124530fac4","tarball":"https://registry.npmjs.org/@agenticros/start-slam/-/start-slam-0.2.0.tgz","fileCount":7,"integrity":"sha512-FZKCU0V3sJu/RIKN/489hyyKVzBMkP/IjAMqrWr3LcggQo8GNiXpG/z0s9MD1qx9U0cFNitnYl5ObYWIxO5jPA==","signatures":[{"sig":"MEYCIQDLxjeKrWfqhpRbA7X0eyolWA5ndYoVpptQJukxjReHHgIhAJxyfweJb1/Mx6dX5dwKZmwFMPIzHeonKPh0jjBNF6FX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22218},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"07e6306d6aa6dc6e41a48b8e39e15274c2563acc","scripts":{"build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chrismatthieu","email":"chris@matthieu.us"},"agenticros":{"id":"start-slam","categories":["mapping","navigation"],"description":"RTAB-Map mapping lifecycle: resume/pause, database backup/load, and mapping vs localization mode. Bring up rtabmap_ros yourself; AgenticROS only calls the services.","displayName":"Start SLAM","capabilities":[{"id":"start_slam","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request body (Empty = {})."}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"optional":["camera","depth","lidar"],"blocks_base":false,"description":"Resume SLAM mapping (std_srvs/Empty on rtabmap/resume).","interruptible":true,"implementation":{"kind":"external_ros_node","launch":"rtabmap.launch.py","package":"rtabmap_slam","service":"rtabmap/resume","msg_type":"std_srvs/srv/Empty"}},{"id":"stop_slam","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request body (Empty = {})."}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"optional":["camera","depth","lidar"],"blocks_base":false,"description":"Pause SLAM mapping (std_srvs/Empty on rtabmap/pause).","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","service":"rtabmap/pause","msg_type":"std_srvs/srv/Empty"}},{"id":"save_map","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request; Empty = {}."}},"outputs":{"success":{"type":"boolean","description":"Whether the backup service call succeeded."}},"optional":["camera","depth","lidar"],"blocks_base":false,"description":"Snapshot the RTAB-Map database via rtabmap/backup (writes <database_path>.back, typically ~/.ros/rtabmap.db.back). Occupancy /map is published continuously; use nav2 map_saver_cli if you also need a PGM/YAML grid.","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","service":"rtabmap/backup","msg_type":"std_srvs/srv/Empty"}},{"id":"load_map","verb":"map","inputs":{"clear":{"type":"boolean","optional":true,"description":"Clear the in-memory map before loading (default true)."},"request":{"type":"object","optional":true,"description":"Full LoadDatabase request override ({ database_path, clear })."},"database_path":{"type":"string","description":"Absolute path to the .db file (e.g. /home/user/.ros/rtabmap.db)."}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"optional":["camera","depth","lidar"],"blocks_base":false,"description":"Load an RTAB-Map database via rtabmap/load_database. Pass database_path (and optional clear). Then call set_localization_mode to navigate on that map.","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","service":"rtabmap/load_database","msg_type":"rtabmap_msgs/srv/LoadDatabase"}},{"id":"set_mapping_mode","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request body (Empty = {})."}},"outputs":{"success":{"type":"boolean"}},"optional":["camera","depth","lidar"],"blocks_base":false,"description":"Switch RTAB-Map to mapping mode (rtabmap/set_mode_mapping).","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","service":"rtabmap/set_mode_mapping","msg_type":"std_srvs/srv/Empty"}},{"id":"set_localization_mode","verb":"map","inputs":{"request":{"type":"object","optional":true,"description":"Service request body (Empty = {})."}},"outputs":{"success":{"type":"boolean"}},"optional":["camera","depth","lidar"],"blocks_base":false,"description":"Switch RTAB-Map to localization mode (rtabmap/set_mode_localization). Use after save_map when Nav2 should treat the map as complete.","interruptible":true,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","service":"rtabmap/set_mode_localization","msg_type":"std_srvs/srv/Empty"}}]},"repository":{"url":"git+https://github.com/agenticros/agenticros-skill-start-slam.git","type":"git"},"_npmVersion":"10.9.8","description":"External ROS-node skill: start / stop / save / load RTAB-Map (or compatible) SLAM via ROS services.","directories":{},"_nodeVersion":"22.23.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^20.17.0"},"_npmOperationalInternal":{"tmp":"tmp/start-slam_0.2.0_1787592477632_0.7926563240517401","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@agenticros/start-slam","version":"0.2.1","type":"module","description":"External ROS-node skill: start / stop / save / load RTAB-Map (or compatible) SLAM via ROS services.","keywords":["agenticros","ros2","slam","rtabmap","mapping"],"homepage":"https://github.com/agenticros/agenticros-skill-start-slam#readme","bugs":{"url":"https://github.com/agenticros/agenticros-skill-start-slam/issues"},"repository":{"type":"git","url":"git+https://github.com/agenticros/agenticros-skill-start-slam.git"},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","typecheck":"tsc --noEmit"},"agenticros":{"id":"start-slam","displayName":"Start SLAM","description":"RTAB-Map mapping lifecycle: resume/pause, database backup/load, and mapping vs localization mode. Bring up rtabmap_ros yourself; AgenticROS only calls the services.","categories":["mapping","navigation"],"capabilities":[{"id":"start_slam","verb":"map","description":"Resume SLAM mapping (std_srvs/Empty on rtabmap/resume).","optional":["camera","depth","lidar"],"inputs":{"request":{"type":"object","description":"Service request body (Empty = {}).","optional":true}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"interruptible":true,"blocks_base":false,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","launch":"rtabmap.launch.py","service":"rtabmap/resume","msg_type":"std_srvs/srv/Empty"}},{"id":"stop_slam","verb":"map","description":"Pause SLAM mapping (std_srvs/Empty on rtabmap/pause).","optional":["camera","depth","lidar"],"inputs":{"request":{"type":"object","description":"Service request body (Empty = {}).","optional":true}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"interruptible":true,"blocks_base":false,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","service":"rtabmap/pause","msg_type":"std_srvs/srv/Empty"}},{"id":"save_map","verb":"map","description":"Snapshot the RTAB-Map database via rtabmap/backup (writes <database_path>.back, typically ~/.ros/rtabmap.db.back). Occupancy /map is published continuously; use nav2 map_saver_cli if you also need a PGM/YAML grid.","optional":["camera","depth","lidar"],"inputs":{"request":{"type":"object","description":"Service request; Empty = {}.","optional":true}},"outputs":{"success":{"type":"boolean","description":"Whether the backup service call succeeded."}},"interruptible":true,"blocks_base":false,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","service":"rtabmap/backup","msg_type":"std_srvs/srv/Empty"}},{"id":"load_map","verb":"map","description":"Load an RTAB-Map database via rtabmap/load_database. Pass database_path (and optional clear). Then call set_localization_mode to navigate on that map.","optional":["camera","depth","lidar"],"inputs":{"database_path":{"type":"string","description":"Absolute path to the .db file (e.g. /home/user/.ros/rtabmap.db)."},"clear":{"type":"boolean","description":"Clear the in-memory map before loading (default true).","optional":true},"request":{"type":"object","description":"Full LoadDatabase request override ({ database_path, clear }).","optional":true}},"outputs":{"success":{"type":"boolean","description":"Whether the service call succeeded."}},"interruptible":true,"blocks_base":false,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","service":"rtabmap/load_database","msg_type":"rtabmap_msgs/srv/LoadDatabase"}},{"id":"set_mapping_mode","verb":"map","description":"Switch RTAB-Map to mapping mode (rtabmap/set_mode_mapping).","optional":["camera","depth","lidar"],"inputs":{"request":{"type":"object","description":"Service request body (Empty = {}).","optional":true}},"outputs":{"success":{"type":"boolean"}},"interruptible":true,"blocks_base":false,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","service":"rtabmap/set_mode_mapping","msg_type":"std_srvs/srv/Empty"}},{"id":"set_localization_mode","verb":"map","description":"Switch RTAB-Map to localization mode (rtabmap/set_mode_localization). Use after save_map when Nav2 should treat the map as complete.","optional":["camera","depth","lidar"],"inputs":{"request":{"type":"object","description":"Service request body (Empty = {}).","optional":true}},"outputs":{"success":{"type":"boolean"}},"interruptible":true,"blocks_base":false,"implementation":{"kind":"external_ros_node","package":"rtabmap_slam","service":"rtabmap/set_mode_localization","msg_type":"std_srvs/srv/Empty"}}]},"devDependencies":{"@types/node":"^20.17.0","typescript":"^5.7.0"},"author":{"name":"AgenticROS"},"license":"Apache-2.0","publishConfig":{"access":"public"},"_id":"@agenticros/start-slam@0.2.1","gitHead":"5893e5741af64f96f4d9add52e5a0cb4f6111b82","_nodeVersion":"22.23.1","_npmVersion":"10.9.8","dist":{"integrity":"sha512-ONZDYIjSOgJ3/TLT5rRbLzKUai930Hw0sQ2rTZMLfBSXFZ14F/wHbtf8y8yRRQ5dYm8zdhy1YOBNpqQawzXr3w==","shasum":"639e53042576d64d39ac644fa960aeca0cca88d6","tarball":"https://registry.npmjs.org/@agenticros/start-slam/-/start-slam-0.2.1.tgz","fileCount":7,"unpackedSize":22416,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCx9dUei5lxPHJQ8P2YLr17gs3qDKTA5dvyIS1pGD6ExgIhAJuar1o24EqCuJ6o19+24CtOXkqNne/SpuNXZL7LShQ/"}]},"_npmUser":{"name":"chrismatthieu","email":"chris@matthieu.us"},"directories":{},"maintainers":[{"name":"chrismatthieu","email":"chris@matthieu.us"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/start-slam_0.2.1_1787597815048_0.35106994810838144"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-09T23:02:15.321Z","modified":"2026-08-24T18:56:55.405Z","0.1.0":"2026-07-09T23:02:15.581Z","0.1.1":"2026-07-09T23:04:36.604Z","0.1.2":"2026-07-09T23:34:55.757Z","0.2.0":"2026-08-24T17:27:57.773Z","0.2.1":"2026-08-24T18:56:55.199Z"},"bugs":{"url":"https://github.com/agenticros/agenticros-skill-start-slam/issues"},"author":{"name":"AgenticROS"},"license":"Apache-2.0","homepage":"https://github.com/agenticros/agenticros-skill-start-slam#readme","keywords":["agenticros","ros2","slam","rtabmap","mapping"],"repository":{"type":"git","url":"git+https://github.com/agenticros/agenticros-skill-start-slam.git"},"description":"External ROS-node skill: start / stop / save / load RTAB-Map (or compatible) SLAM via ROS services.","maintainers":[{"name":"chrismatthieu","email":"chris@matthieu.us"}],"readme":"# Start SLAM — RTAB-Map external skill\n\nAgenticROS skill that exposes `start_slam`, `stop_slam`, `save_map`, `load_map`, `set_mapping_mode`, and `set_localization_mode` as **external** service capabilities. AgenticROS does **not** launch RTAB-Map — bring it up on the robot, then install this skill.\n\nThis skill does **not** drive the base. Pair it with [`@agenticros/explore`](https://github.com/agenticros/agenticros-skill-explore) to cover a room, then [`@agenticros/navigate-to`](https://github.com/agenticros/agenticros-skill-navigate-to) to go places on the saved map.\n\n```bash\nnpx agenticros skills install @agenticros/start-slam\n# or: npx agenticros skills install chrismatthieu/start-slam\n# or: \"skillRefs\": [\"@agenticros/start-slam\"]\n```\n\n## Capabilities\n\n| Id | Service | Type | What it does |\n|---|---|---|---|\n| `start_slam` | `rtabmap/resume` | `std_srvs/srv/Empty` | Resume mapping |\n| `stop_slam` | `rtabmap/pause` | `std_srvs/srv/Empty` | Pause mapping |\n| `save_map` | `rtabmap/backup` | `std_srvs/srv/Empty` | Copy the live database to `<database_path>.back` (default `~/.ros/rtabmap.db.back`) |\n| `load_map` | `rtabmap/load_database` | `rtabmap_msgs/srv/LoadDatabase` | Load a `.db`; inputs `{ database_path, clear? }` |\n| `set_mapping_mode` | `rtabmap/set_mode_mapping` | `std_srvs/srv/Empty` | Continue expanding the map |\n| `set_localization_mode` | `rtabmap/set_mode_localization` | `std_srvs/srv/Empty` | Localize only (Nav2-friendly after a mapping session) |\n\nRTAB-Map already publishes `/map` (`nav_msgs/OccupancyGrid`) while it runs. `save_map` persists the **graph/database**, not a PGM. To also dump a Nav2 occupancy file:\n\n```bash\nros2 run nav2_map_server map_saver_cli -f ~/maps/room\n```\n\n## Mission example — map, then localize\n\n```json\n{\n  \"mission\": {\n    \"name\": \"map the room\",\n    \"steps\": [\n      { \"id\": \"slam\", \"capability\": \"start_slam\", \"inputs\": { \"request\": {} } },\n      { \"id\": \"cover\", \"capability\": \"explore\", \"inputs\": { \"timeout_s\": 180 } },\n      { \"id\": \"save\", \"capability\": \"save_map\", \"inputs\": { \"request\": {} } },\n      { \"id\": \"localize\", \"capability\": \"set_localization_mode\", \"inputs\": { \"request\": {} } }\n    ]\n  }\n}\n```\n\nReload a previous database:\n\n```json\n{\n  \"id\": \"load\",\n  \"capability\": \"load_map\",\n  \"inputs\": {\n    \"database_path\": \"/home/user/.ros/rtabmap.db\",\n    \"clear\": true\n  }\n}\n```\n\nDefault service names match common `rtabmap_ros` / `rtabmap_slam` bringups. If your launch file uses different names, fork the skill or edit `agenticros.capabilities[].implementation.service` in `package.json`.\n\n## Requirements\n\n- Apt: `ros-jazzy-rtabmap-ros` (or `ros-humble-rtabmap-ros`)\n- `rtabmap_ros` running with the documented services\n- Transport with service-call support (local DDS / rosbridge preferred; Zenoh depends on bridge config)\n- RGB-D (RealSense) or lidar topics already remapped in your RTAB-Map launch\n\n## Operator bringup\n\nSee **[Mapping a room](https://github.com/agenticros/agenticros/blob/main/docs/mapping.md)** in the AgenticROS repo (RealSense + RTAB-Map + Nav2, no AMCL).\n\nOn Jazzy, install the stacks first:\n\n```bash\nsudo apt-get install -y \\\n  ros-jazzy-navigation2 \\\n  ros-jazzy-nav2-bringup \\\n  ros-jazzy-rtabmap-ros\n```\n\nShort form:\n\n```bash\nros2 launch rtabmap_launch rtabmap.launch.py \\\n  rgb_topic:=/camera/camera/color/image_raw \\\n  depth_topic:=/camera/camera/aligned_depth_to_color/image_raw \\\n  camera_info_topic:=/camera/camera/color/camera_info \\\n  frame_id:=base_link \\\n  approx_sync:=true\n```\n","readmeFilename":"README.md"}