Skip to main content

form-workflows

Enables the creation of complex multi-step forms with conditional logic and validation for enhanced user experiences.

Install this skill

or
0/100

Security score

The form-workflows skill was audited on Feb 9, 2026 and we found 25 security issues across 2 threat categories. Review the findings below before installing.

Categories Tested

Security Issues

medium line 76

Template literal with variable interpolation in command context

SourceSKILL.md
76html: `
medium line 103

Template literal with variable interpolation in command context

SourceSKILL.md
103form: `step-${stepNumber}-form`
medium line 106

Template literal with variable interpolation in command context

SourceSKILL.md
106console.log(`Step ${stepNumber} schema:`, this.stepSchemas[stepNumber].schema);
medium line 113

Template literal with variable interpolation in command context

SourceSKILL.md
113state: `wizard-step-${stepNumber}`,
medium line 136

Template literal with variable interpolation in command context

SourceSKILL.md
136const formElement = document.querySelector(`form[name="step-${this.currentStep}-form"]`);
medium line 141

Template literal with variable interpolation in command context

SourceSKILL.md
141form: `step-${this.currentStep}-form`,
medium line 163

Template literal with variable interpolation in command context

SourceSKILL.md
163this.formData[`step${this.currentStep}`] = stepData;
medium line 200

Template literal with variable interpolation in command context

SourceSKILL.md
200const input = document.querySelector(`[name="${field}"]`);
medium line 329

Template literal with variable interpolation in command context

SourceSKILL.md
329const formElement = document.querySelector(`form[name="${this.formName}"]`);
medium line 333

Template literal with variable interpolation in command context

SourceSKILL.md
333const triggerField = formElement.querySelector(`[name="${condition.field}"]`);
medium line 351

Template literal with variable interpolation in command context

SourceSKILL.md
351const field = document.querySelector(`[name="${fieldName}"]`);
medium line 388

Template literal with variable interpolation in command context

SourceSKILL.md
388const formElement = document.querySelector(`form[name="${this.formName}"]`);
medium line 517

Template literal with variable interpolation in command context

SourceSKILL.md
517const response = await fetch(`/api/check-email?email=${email}`);
medium line 565

Template literal with variable interpolation in command context

SourceSKILL.md
565alert(`Error in step(s) ${error.affectedSteps.join(', ')}: ${error.message}`);
medium line 582

Template literal with variable interpolation in command context

SourceSKILL.md
582this.storageKey = `form_progress_${formId}`;
medium line 673

Template literal with variable interpolation in command context

SourceSKILL.md
673const message = `You have saved progress from ${Math.round(hoursSince)} hours ago (Step ${progress.currentStep}). Resume?`;
medium line 709

Template literal with variable interpolation in command context

SourceSKILL.md
709const formElement = document.querySelector(`form[name="step-${this.currentStep}-form"]`);
medium line 765

Template literal with variable interpolation in command context

SourceSKILL.md
765console.log(`Skipping question ${index} (condition not met)`);
medium line 772

Template literal with variable interpolation in command context

SourceSKILL.md
772html: `
medium line 812

Template literal with variable interpolation in command context

SourceSKILL.md
812`<label><input type="radio" name="answer" value="${opt.value}" required /> ${opt.label}</label>`
medium line 817

Template literal with variable interpolation in command context

SourceSKILL.md
817`<label><input type="checkbox" name="answer" value="${opt.value}" /> ${opt.label}</label>`
medium line 840

Template literal with variable interpolation in command context

SourceSKILL.md
840console.log(`Answer to "${question.text}": ${answer}`);
medium line 965

Template literal with variable interpolation in command context

SourceSKILL.md
965```javascript
low line 232

Fetch to external URL

SourceSKILL.md
232const response = await fetch('/api/registration/', {
low line 874

Fetch to external URL

SourceSKILL.md
874await fetch('/api/survey/', {
Scanned on Feb 9, 2026
View Security Dashboard
Installation guide →