← Back to Skills Marketplace
tomgranot

Cleanup Forms

by TomGranot · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
108
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install cleanup-forms
Description
Audit and remove unused, test, or deprecated forms from HubSpot. Identifies forms with zero submissions, forms not embedded on any page, and test forms left...
README (SKILL.md)

Cleanup Forms

Audit HubSpot forms to remove unused and test forms. Stale forms clutter the forms dashboard and can cause confusion when building workflows or reports.

Prerequisites

  • HubSpot API token in .env
  • Python with hubspot-api-client installed via uv
  • Note: The Forms API may return 403 on some plan tiers. If so, perform the audit manually in the HubSpot UI under Marketing > Forms.

Step-by-Step Instructions

Stage 1: Before — Inventory All Forms

Pull all forms via the API:

from hubspot import HubSpot

api_client = HubSpot(access_token=os.getenv("HUBSPOT_API_TOKEN"))
forms = api_client.marketing.forms.forms_api.get_page(limit=100)

For each form, record: form ID, name, type, submission count, created date, last submission date.

Stage 2: Execute — Identify Candidates for Deletion

Flag forms matching any of these criteria:

  1. Zero submissions and created more than 30 days ago
  2. No recent submissions (last submission 6+ months ago) and not embedded on an active page
  3. Test forms (names containing "test", "temp", "draft", "copy of")
  4. Deprecated forms replaced by newer versions

Before deleting, check:

  • Is the form referenced in any workflow enrollment trigger?
  • Is the form embedded on any live landing page or website page?
  • Is the form used in any pop-up or slide-in CTA?

Stage 3: After — Delete and Document

  1. Delete confirmed unused forms via the API or UI.
  2. Document what was deleted in a cleanup log.
  3. If a form with submissions is deleted, the submission data is retained on the contact records — but the form definition is gone.

Stage 4: Rollback

  • Deleted forms cannot be restored in HubSpot.
  • Before deleting a form with any submissions, export the form definition (field names, settings) so it can be recreated.
  • Contact records retain their form submission history regardless of form deletion.

Tips

  • Establish a naming convention: [TEAM] - Purpose - Version (e.g., [Marketing] - Webinar Registration - v2).
  • Prefix deprecated forms with "[DEPRECATED]" instead of deleting immediately — delete after one quarter of no usage.
Usage Guidance
This skill appears to be a plausible HubSpot forms cleanup recipe, but you should not install or run it without clarifying a few things: (1) SKILL.md expects a HUBSPOT_API_TOKEN (via .env) and a Python client library — the registry metadata fails to declare that; confirm the skill's metadata is corrected. (2) Confirm what HubSpot API scopes the token must have (Forms, Workflows, CMS/pages, CTA) because deletion and reference checks may need broad access; use a token with the minimum required scopes and avoid using an admin key unless necessary. (3) The SKILL.md mentions possible 403s on some plans — verify your HubSpot plan/API access before relying on automated deletion. (4) Deletions are irreversible in HubSpot: export form definitions and back up any submission data before deleting. (5) The document has a minor typo ('uv' for installation) — ask the author how they expect you to install dependencies. If you cannot get these clarifications, treat the skill as untrusted and perform the audit manually in HubSpot UI or with your own vetted scripts.
Capability Analysis
Type: OpenClaw Skill Name: cleanup-forms Version: 1.0.0 The skill is a standard administrative tool for auditing and deleting unused HubSpot forms. It uses the official HubSpot API client to fetch form data and provides logical criteria for identifying test or deprecated forms. There are no signs of data exfiltration, malicious code execution, or prompt injection; the destructive actions (deletion) are clearly documented and aligned with the stated purpose of the skill in SKILL.md.
Capability Assessment
Purpose & Capability
The skill's stated purpose (audit and remove HubSpot forms) matches the actions described in SKILL.md (calling the Forms API, identifying candidates, deleting via API or UI). However, the SKILL.md explicitly requires a HUBSPOT_API_TOKEN and the hubspot-api-client Python package, but the registry metadata declares no required environment variables or dependencies — this mismatch is unexpected and unexplained.
Instruction Scope
Instructions focus on listing forms, flagging candidates, checking references (workflows, embedded pages, pop-ups), and deleting. Checking whether a form is embedded or referenced may require additional HubSpot APIs or manual UI checks; the doc notes plan-level 403s but does not list which extra API scopes/endpoints will be used or how to discover embeddings/reference usage programmatically. Deletion is irreversible in HubSpot, and the instructions correctly recommend exports, but the instructions leave implementation details vague (e.g., how to detect embeddings or workflow triggers).
Install Mechanism
This is an instruction-only skill with no install spec and no code files, so nothing will be written to disk by an installer. The runtime assumes Python and a third-party client library, but the skill does not attempt to install them itself — that is a low install risk but shifts responsibility to the user/agent environment.
Credentials
SKILL.md requires a HUBSPOT_API_TOKEN (stored in .env) and the hubspot-api-client package, but the skill metadata lists no required env vars; this discrepancy is a red flag. The single credential requested by the instructions is proportionate to the task, but the token will likely need broad HubSpot scopes (forms, workflows, CMS/pages, possibly CMS API for embedded checks). The SKILL.md does not enumerate required API scopes or permissions.
Persistence & Privilege
The skill does not request persistent presence (always: false) and does not modify other skills or system config. Autonomous invocation is allowed by default, which is normal; there is no evidence the skill requests elevated platform privileges.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install cleanup-forms
  3. After installation, invoke the skill by name or use /cleanup-forms
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of cleanup-forms. - Audits HubSpot forms to identify unused, test, or deprecated forms. - Flags forms with zero submissions, old/no recent activity, or "test" naming. - Provides step-by-step instructions covering inventory, identification, deletion, and documentation. - Includes rollback guidance and tips for safer form management. - Requires HubSpot API token and Python client.
Metadata
Slug cleanup-forms
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Cleanup Forms?

Audit and remove unused, test, or deprecated forms from HubSpot. Identifies forms with zero submissions, forms not embedded on any page, and test forms left... It is an AI Agent Skill for Claude Code / OpenClaw, with 108 downloads so far.

How do I install Cleanup Forms?

Run "/install cleanup-forms" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Cleanup Forms free?

Yes, Cleanup Forms is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Cleanup Forms support?

Cleanup Forms is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Cleanup Forms?

It is built and maintained by TomGranot (@tomgranot); the current version is v1.0.0.

💬 Comments