{"id":359326,"date":"2026-09-03T14:41:18","date_gmt":"2026-09-03T14:41:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/alignpress\/"},"modified":"2026-09-04T19:01:26","modified_gmt":"2026-09-04T19:01:26","slug":"routinekit","status":"publish","type":"plugin","link":"https:\/\/fy.wordpress.org\/plugins\/routinekit\/","author":20989997,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.1","stable_tag":"1.0.1","tested":"7.1","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"RoutineKit \u2014 Reusable Configuration Checklists","header_author":"Zeeshan Rasool","header_description":"RoutineKit lets you build reusable, step-by-step site configuration checklists and run them across client sites \u2014 saving hours of repetitive WordPress setup work.","assets_banners_color":"808088","last_updated":"2026-09-04 19:01:26","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/profiles.wordpress.org\/codeleftover\/","rating":0,"author_block_rating":0,"active_installs":40,"downloads":87,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"codeleftover","date":"2026-09-03 14:41:10","revision":3679913},"1.0.1":{"tag":"1.0.1","author":"codeleftover","date":"2026-09-04 19:01:26","revision":3681709}},"upgrade_notice":{"1.0.1":"<p>Adds Paste a Checklist \u2014 turn any pasted list into a workflow. Also fixes workflow completion: all-optional workflows no longer finish early, and duplicate completion emails are no longer sent.<\/p>","1.0.0":"<p>Initial release \u2014 no upgrade needed.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3680033,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3680033,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3680033,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3680033,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3680033,"resolution":"1","location":"assets","locale":"","width":900,"height":551},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3680033,"resolution":"2","location":"assets","locale":"","width":900,"height":573},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3680033,"resolution":"3","location":"assets","locale":"","width":900,"height":551}},"screenshots":{"1":"Workflow Manager \u2014 list of all workflows with status and last-run date","2":"Import built-in Templates \u2014 Choose a template from the library","3":"Guided Runner \u2014 floating sidebar walking through each step"}},"plugin_section":[],"plugin_tags":[5590,13042,3017,174442,8197],"plugin_category":[],"plugin_contributors":[224048],"plugin_business_model":[],"class_list":["post-359326","plugin","type-plugin","status-publish","hentry","plugin_tags-agency","plugin_tags-checklist","plugin_tags-configuration","plugin_tags-site-management","plugin_tags-workflow","plugin_contributors-codeleftover","plugin_committers-codeleftover"],"banners":{"banner":"https:\/\/ps.w.org\/routinekit\/assets\/banner-772x250.png?rev=3680033","banner_2x":"https:\/\/ps.w.org\/routinekit\/assets\/banner-1544x500.png?rev=3680033","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/routinekit\/assets\/icon-128x128.png?rev=3680033","icon_2x":"https:\/\/ps.w.org\/routinekit\/assets\/icon-256x256.png?rev=3680033","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/routinekit\/assets\/screenshot-1.png?rev=3680033","caption":"Workflow Manager \u2014 list of all workflows with status and last-run date"},{"src":"https:\/\/ps.w.org\/routinekit\/assets\/screenshot-2.png?rev=3680033","caption":"Import built-in Templates \u2014 Choose a template from the library"},{"src":"https:\/\/ps.w.org\/routinekit\/assets\/screenshot-3.png?rev=3680033","caption":"Guided Runner \u2014 floating sidebar walking through each step"}],"raw_content":"<!--section=description-->\n<p><strong>RoutineKit<\/strong> solves the agency problem of replicating the same WordPress configuration changes across dozens or hundreds of client sites.<\/p>\n\n<p>Build reusable, step-by-step configuration checklists inside one site, then run them anywhere. Each step includes instructions, a direct deep-link to the exact settings page, and optional evidence capture \u2014 so your team always knows what was done, when, and by whom.<\/p>\n\n<h4>Core Features (Free)<\/h4>\n\n<ul>\n<li><strong>Workflow Builder<\/strong> \u2014 create reusable configuration checklists with step-by-step instructions<\/li>\n<li><strong>Guided Runner<\/strong> \u2014 a floating sidebar that walks your team through each step and links directly to the right settings page<\/li>\n<li><strong>Auto-Capture<\/strong> \u2014 RoutineKit watches wp_options changes as you configure a site and offers to turn them into workflow steps automatically<\/li>\n<li><strong>25+ Deep-Links<\/strong> \u2014 pre-built links to the most common WordPress, WooCommerce, Yoast SEO, Wordfence, and UpdraftPlus settings pages<\/li>\n<li><strong>5 Starter Templates<\/strong> \u2014 New Site Setup, Security Hardening, WooCommerce Launch, SEO Setup, Site Migration<\/li>\n<li><strong>JSON Export\/Import<\/strong> \u2014 share workflows between sites via JSON file or URL<\/li>\n<li><strong>Import from URL<\/strong> \u2014 import any shared workflow directly from a URL (requires a connected RoutineKit account)<\/li>\n<\/ul>\n\n<h4>Pro Features (Agency \/ Agency Pro)<\/h4>\n\n<ul>\n<li><strong>SaaS Dashboard<\/strong> \u2014 manage and assign workflows across all your client sites from one central dashboard<\/li>\n<li><strong>Site Groups &amp; Fleet Assignment<\/strong> \u2014 push workflows to groups of client sites from your dashboard<\/li>\n<li><strong>Note Sharing<\/strong> \u2014 share step notes across sites via the central dashboard<\/li>\n<li><strong>Evidence Capture<\/strong> \u2014 upload screenshots or PDFs as proof of completion per step<\/li>\n<li><strong>Audit Trail<\/strong> \u2014 full timestamped log of who completed what and when, with before\/after option snapshots<\/li>\n<li><strong>Progress Sync<\/strong> \u2014 execution progress synced back to your central dashboard<\/li>\n<li><strong>Priority Support<\/strong> \u2014 dedicated support for Agency and Agency Pro subscribers<\/li>\n<\/ul>\n\n<h4>How It Works<\/h4>\n\n<ol>\n<li><strong>Build<\/strong> \u2014 create a workflow with named steps, instructions, and deep-links<\/li>\n<li><strong>Run<\/strong> \u2014 click Run on any workflow to open the floating Runner sidebar<\/li>\n<li><strong>Follow<\/strong> \u2014 the Runner walks you through each step, links you to the right page, and tracks your progress<\/li>\n<li><strong>Done<\/strong> \u2014 all steps completed? RoutineKit marks the run complete with a full audit trail<\/li>\n<\/ol>\n\n<h4>Auto-Capture<\/h4>\n\n<p>Turn live configuration sessions into documented workflows automatically. RoutineKit monitors wp_options changes as you navigate through settings pages and offers to add them as workflow steps \u2014 with the exact option values captured for future reference.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>RoutineKit communicates with an external service <strong>only when you explicitly connect to RoutineKit Cloud<\/strong>. No data is sent to any external server without an active connection.<\/p>\n\n<h4>RoutineKit Cloud<\/h4>\n\n<p>When you enter a license key and connect to RoutineKit Cloud, this plugin sends data to and receives data from <code>https:\/\/app.routinekit.dev<\/code>.<\/p>\n\n<p><strong>Data sent:<\/strong>\n* Your site URL, site name, and WordPress version (on connect and heartbeat)\n* RoutineKit plugin version (on heartbeat)\n* Workflow structure (title, steps) when you push a workflow to a site group\n* Execution completion status when a runner finishes a SaaS-assigned workflow<\/p>\n\n<p><strong>Data received:<\/strong>\n* Workflow assignments pushed from your central dashboard\n* Template library available for your plan\n* License plan status<\/p>\n\n<p><strong>When this happens:<\/strong> Only after you explicitly enter an API key in RoutineKit &gt; Settings &gt; Cloud Connection. The connection can be removed at any time from the same screen, after which no further data is sent.<\/p>\n\n<p>This service is operated by the plugin author. It is optional \u2014 the plugin is fully functional without it.<\/p>\n\n<ul>\n<li>Service endpoint: https:\/\/app.routinekit.dev<\/li>\n<li>Privacy policy: https:\/\/routinekit.dev\/privacy<\/li>\n<li>Terms of service: https:\/\/routinekit.dev\/terms<\/li>\n<\/ul>\n\n<h3>Privacy Policy<\/h3>\n\n<p>RoutineKit captures wp_options changes made during your admin sessions to help you build workflow steps (Auto-Capture feature). This data is stored locally in your own database and is never sent externally on the free plan.<\/p>\n\n<p>The Auto-Capture buffer stores: the option name, old value, new value, the URL of the admin page where the change occurred, and the WordPress user ID of the person who made the change. This data is retained for a configurable period (default: 30 days, adjustable in Settings) and deleted automatically. It is fully removed when the plugin is uninstalled.<\/p>\n\n<p>Execution audit trails store: which user ran a workflow, which steps were completed or skipped, timestamps, and any notes or evidence files uploaded. This data is stored locally in your database.<\/p>\n\n<p>If you connect to RoutineKit Cloud (Pro), please review the RoutineKit Cloud privacy policy at https:\/\/routinekit.dev\/privacy.<\/p>\n\n<h3>Source Code<\/h3>\n\n<p>The complete source code for this plugin, including all JSX\/JavaScript source files, is publicly available at:<\/p>\n\n<p>https:\/\/github.com\/99points\/routinekit-public<\/p>\n\n<h3>Build Instructions<\/h3>\n\n<p>The JavaScript assets in this plugin are compiled from source files in the <code>src\/<\/code> directory using <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/packages\/packages-scripts\/\">@wordpress\/scripts<\/a> (webpack).<\/p>\n\n<p>To rebuild from source:<\/p>\n\n<ol>\n<li>Install Node.js (v18+) and npm<\/li>\n<li>Run <code>npm install<\/code> in the plugin root<\/li>\n<li>Run <code>npm run build<\/code> to compile production assets into <code>assets\/js\/<\/code><\/li>\n<\/ol>\n\n<h3>Third-Party Libraries<\/h3>\n\n<p>This plugin includes the following third-party library:<\/p>\n\n<ul>\n<li><strong>html2canvas<\/strong> (v1.4.1, MIT License) \u2014 https:\/\/html2canvas.hertzen.com\nUsed to capture screenshots of the admin screen for step evidence. Bundled in <code>assets\/js\/html2canvas.min.js<\/code> (vanilla capture watcher) and in the webpack chunk <code>assets\/js\/548.js<\/code> (React runner notes).<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>routinekit<\/code> folder to <code>\/wp-content\/plugins\/<\/code><\/li>\n<li>Activate the plugin from the Plugins screen in WordPress<\/li>\n<li>Go to <strong>RoutineKit &gt; Workflows<\/strong> to create your first workflow<\/li>\n<li>Use the <strong>Run<\/strong> button to open the guided Runner sidebar<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20routinekit%20replace%20mainwp%20or%20managewp%3F\"><h3>Does RoutineKit replace MainWP or ManageWP?<\/h3><\/dt>\n<dd><p>No. RoutineKit is complementary to multi-site management tools. It focuses on <em>what<\/em> needs to be configured on each site and provides a guided runner to do it, rather than managing plugin updates or security scans.<\/p><\/dd>\n<dt id=\"can%20i%20share%20workflows%20between%20sites%3F\"><h3>Can I share workflows between sites?<\/h3><\/dt>\n<dd><p>Yes \u2014 use the JSON Export button on any workflow, then import the JSON file on another site. Users with a connected RoutineKit account can also import directly from a URL. Pro users can additionally manage and assign workflows across all sites from the central dashboard.<\/p><\/dd>\n<dt id=\"how%20does%20auto-capture%20work%3F\"><h3>How does Auto-Capture work?<\/h3><\/dt>\n<dd><p>When you navigate to a WordPress settings page and save changes, RoutineKit detects which wp_options values changed and shows a notification offering to add them as a workflow step. The step includes a snapshot of the exact settings you changed.<\/p><\/dd>\n<dt id=\"is%20my%20data%20sent%20anywhere%3F\"><h3>Is my data sent anywhere?<\/h3><\/dt>\n<dd><p>On the free plan, all data stays on your own site. Pro users optionally connect to the RoutineKit Cloud dashboard for cross-site management \u2014 connection requires an explicit API key entry and can be revoked at any time.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20deactivate%20the%20plugin%3F\"><h3>What happens if I deactivate the plugin?<\/h3><\/dt>\n<dd><p>Deactivating preserves all your workflows and data.<\/p>\n\n<p>Deleting the plugin also preserves your data by default, so you can reinstall without losing anything. If you want a clean removal, enable <strong>Settings &gt; Danger Zone &gt; Delete All Data on Uninstall<\/strong> before deleting \u2014 RoutineKit will then drop its tables and options when the plugin is deleted.<\/p><\/dd>\n<dt id=\"can%20multiple%20team%20members%20run%20the%20same%20workflow%3F\"><h3>Can multiple team members run the same workflow?<\/h3><\/dt>\n<dd><p>Yes \u2014 each run is tracked separately as an execution with its own audit trail. Multiple people can run the same workflow on different sites simultaneously.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>New: Paste a Checklist \u2014 paste a list from a Google Doc, Notion page or plain notes and it becomes a workflow. The first line is the title, every line after it becomes a step; bullets, numbering and [ ] checkboxes are stripped automatically. Available from Import Workflow, from the empty state, and once on first run.<\/li>\n<li>Changed: plan buttons on the Upgrade screen now open the pricing page at routinekit.dev while self-serve signup is being finished<\/li>\n<li>Fixed: a workflow whose steps are all optional no longer marks itself complete as soon as the first step is done<\/li>\n<li>Fixed: completing optional steps after the last required one no longer resends the completion email or re-pushes the run to RoutineKit Cloud<\/li>\n<li>Fixed: dismissing the \"run is paused\" notice in the Runner now sticks instead of reappearing on the next admin page<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Workflow Builder with step editor and deep-link selector<\/li>\n<li>Guided Runner floating sidebar<\/li>\n<li>Auto-Capture engine for wp_options changes<\/li>\n<li>5 starter workflow templates<\/li>\n<li>JSON export and import (file and URL)<\/li>\n<li>Import from URL (requires connected RoutineKit account)<\/li>\n<li>Auto-Capture retention configurable by all users (default: 30 days)<\/li>\n<li>Pro: SaaS dashboard for cross-site fleet management and assignment push<\/li>\n<li>Pro: note sharing across sites<\/li>\n<li>Pro: evidence upload per step<\/li>\n<li>Pro: full audit trail with user attribution and option snapshots<\/li>\n<\/ul>","raw_excerpt":"Reusable site configuration checklists for WordPress agencies \u2014 stop re-doing the same setup tasks on every client site.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/359326","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=359326"}],"author":[{"embeddable":true,"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/codeleftover"}],"wp:attachment":[{"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=359326"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=359326"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=359326"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=359326"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=359326"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fy.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=359326"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}