B2B AI DirectoryB2B AI Directory
SEOadvancedPro

Package client onboarding and keyword research as a Claude Skill

Turn client intake, business constraints, site crawls, keyword exports, competitor evidence, clustering, opportunity scoring, and QA into a reusable, versioned SEO delivery system.

What you will have

A Claude Skill and client workspace that produces evidence-backed business understanding, keyword universes, clusters, URL maps, prioritized opportunities, QA, refreshes, and maintainable versions.

Setup time
10-16 hours for the Skill; 6-10 hours per client
Time saved
12-20 hours per client onboarding
Estimated cost
$150 to $700 per month
Tools used
4 tools

Why this works

Keyword research becomes generic when the analyst starts with search volume instead of the client’s commercial model, service constraints, geographies, and conversion paths. A versioned Skill makes the operating rules, schemas, examples, QA, and refresh process reusable while preserving human approval for business interpretation. Raw data, derived analysis, and client decisions remain separable and reproducible.

Step-by-step workflow

Preview the workflow

The first 2 steps are open. Pro unlocks the remaining steps, copy-paste prompts, pro tips, tool-by-tool setup guidance, and implementation details.

1

Define the Skill’s scope, operator, and exclusions

45-60 min

Define the Skill as an onboarding and keyword-research operating system, not an autonomous SEO strategist. Name the agency strategist who owns business interpretation and the analyst who owns data refresh. List supported client types, languages, geographies, and deliverables, plus exclusions such as legal approval, guaranteed rankings, unsupported international translation, and direct site changes. Set the Skill version and change owner. Run this template in Claude Code from the Skill repository root after the referenced source files and current version manifest are available. Record the operation against stable identifiers such as client_id, service, location, persona, keyword, preserve the raw source reference and capture time, and write any transformation or decision into the system’s change history rather than replacing the prior value. Before the step is marked complete, the SEO strategist reviews business understanding, intent labels, exclusions, prioritization, and the final implementation backlog; if that check fails, flag unsupported keyword assumptions, conflicting service eligibility, crawl anomalies, missing geography, and Skill outputs that fail the versioned test cases.

Output

A signed Skill charter with supported jobs and human authority.

Claude Code
Pro tip

A reusable Skill should narrow the job. Trying to cover every SEO task makes the instructions vague and maintenance impossible.

Prompt template
ROLE
You are the governed analysis and operations assistant supporting the SEO strategist and Skill maintainer. You are working inside the versioned client-onboarding and keyword-research Claude Skill, where traceability, stable identifiers, and human authority matter more than producing a polished but unsupported answer.

OBJECTIVE
Complete workflow step 1, “Define the Skill’s scope, operator, and exclusions,” and produce this operational outcome: A signed Skill charter with supported jobs and human authority. The result must be immediately usable by the named operator without inventing records, silently changing approved state, or obscuring uncertainty.

INPUTS
1. SOURCE RECORDS: {{define_the_skill_s_scope_operator_and_exclusions_source_records}}
2. FIELD DICTIONARY AND ALLOWED VALUES: {{define_the_skill_s_scope_operator_and_exclusions_field_dictionary}}
3. OPERATING, PERMISSION, AND DECISION RULES: {{define_the_skill_s_scope_operator_and_exclusions_operating_rules}}
4. APPROVAL CONTEXT, OWNERS, AND DEADLINES: {{define_the_skill_s_scope_operator_and_exclusions_approval_context}}
5. PRIOR VERSION, SNAPSHOT, OR CURRENT STATE: {{define_the_skill_s_scope_operator_and_exclusions_prior_version_or_state}}
Authoritative evidence may include client intake, Google Drive source files, Ahrefs exports, Screaming Frog crawls, approved competitor lists, and Skill regression fixtures.

WORK TO PERFORM
1. Execute the specific job described by “Define the Skill’s scope, operator, and exclusions”; do not broaden the task into a generic strategy exercise.
2. Use the canonical field names and IDs supplied in the inputs, especially client_id, service, location, persona, keyword, intent.
3. Separate observed facts, operator-entered decisions, calculations, and model inferences so reviewers can trace how each conclusion was produced.
4. Return records that can be copied into the versioned client-onboarding and keyword-research Claude Skill without renaming identifiers or collapsing one-to-many relationships.
5. Follow the approved operating rule for this step and make the next action, owner, review gate, and exception state explicit.
6. Identify duplicates, conflicts, stale records, missing IDs, permission problems, and records that must be held for human resolution.
7. Produce a compact review summary explaining what changed, what did not change, what remains uncertain, and what the operator should do next.

OUTPUT SCHEMA
Return valid JSON only, using this exact top-level structure:
{
  "workflow_slug": "client-onboarding-keyword-research-claude-skill",
  "step_number": 1,
  "step_title": "Define the Skill’s scope, operator, and exclusions",
  "run_status": "pass|warning|hold|fail",
  "source_records": [
    {"source_id": "string", "source_type": "string", "captured_at": "ISO-8601|null", "authoritative": true, "notes": "string|null"}
  ],
  "records": [
    {"client_id": "value|null", "service": "value|null", "location": "value|null", "persona": "value|null", "keyword": "value|null", "intent": "value|null", "business_eligibility": "value|null", "evidence_source_ids": ["string"], "confidence": "high|medium|low", "review_status": "approved|needs-review|held"}
  ],
  "exceptions": [
    {"record_id": "string|null", "exception_type": "string", "severity": "low|medium|high|critical", "evidence": "string", "owner": "string", "required_action": "string"}
  ],
  "changes_from_prior_state": [
    {"record_id": "string", "field": "string", "prior_value": "value|null", "proposed_value": "value|null", "reason": "string", "source_ids": ["string"]}
  ],
  "review_summary": {"facts": ["string"], "inferences": ["string"], "open_questions": ["string"], "next_actions": [{"action": "string", "owner": "string", "due_date": "YYYY-MM-DD|null"}]},
  "qa": {"schema_valid": true, "ids_preserved": true, "evidence_complete": true, "human_approval_required": true}
}

GUARDRAILS
- Treat the supplied field dictionary, permissions, approval matrix, and prior approved state as binding.
- Do not create facts, sources, IDs, dates, metrics, quotes, customer permissions, or approvals that are not present in the inputs.
- Do not perform, simulate, or claim an external write; return proposed records or actions for the governed workflow to apply.
- Do not collapse conflicting evidence into a single confident statement. Preserve the conflict and identify the required owner.
- flag unsupported keyword assumptions, conflicting service eligibility, crawl anomalies, missing geography, and Skill outputs that fail the versioned test cases.

EVIDENCE REQUIREMENTS
Every material claim, classification, score, recommendation, mutation, or exception must reference one or more supplied source IDs. Keep raw evidence distinct from derived analysis, retain capture dates when provided, and mark evidence as stale when it falls outside the approved refresh window. A record without adequate evidence must be returned with review_status “held,” not completed through guesswork.

UNCERTAINTY HANDLING
Use high confidence only when authoritative sources agree and the required identifiers are present. Use medium confidence when the evidence is credible but incomplete or indirect. Use low confidence when evidence is sparse, stale, inferred, or contradictory, and state the exact missing information that would change the result. When uncertainty could trigger an external action, financial commitment, customer communication, publication, suppression, or system mutation, return run_status “hold.”

HUMAN REVIEW
The SEO strategist and Skill maintainer must review the JSON before any state change or external action. The approval gate is: the SEO strategist reviews business understanding, intent labels, exclusions, prioritization, and the final implementation backlog. The reviewer must verify source IDs, field mappings, permission scope, exception handling, and the proposed next action; record the reviewer, timestamp, disposition, and any edits in the workflow’s mutation or decision log.
2

Create the versioned Skill folder structure

1-2 hours

Create `.claude/skills/client-seo-onboarding/` with `SKILL.md`, `schemas/`, `templates/`, `rubrics/`, `examples/`, `scripts/`, and `changelog.md`. Add schemas for client intake, site inventory, service-location matrix, competitor set, keyword row, cluster, opportunity score, and deliverable index. Put approved output templates and one good and bad example in version control. Use semantic versioning and name exported client workspaces `client-slug_YYYY-MM-DD_vX`. Run this template in Claude Code from the Skill repository root after the referenced source files and current version manifest are available. Record the operation against stable identifiers such as service, location, persona, keyword, intent, preserve the raw source reference and capture time, and write any transformation or decision into the system’s change history rather than replacing the prior value. Before the step is marked complete, the SEO strategist reviews business understanding, intent labels, exclusions, prioritization, and the final implementation backlog; if that check fails, flag unsupported keyword assumptions, conflicting service eligibility, crawl anomalies, missing geography, and Skill outputs that fail the versioned test cases.

Output

A reusable Claude Skill package with instructions, schemas, examples, and version history.

Claude Code
Pro tip

Examples teach the Skill what quality looks like, but scrub client-sensitive data before placing examples in the reusable package.

Prompt template
ROLE
You are the governed analysis and operations assistant supporting the SEO strategist and Skill maintainer. You are working inside the versioned client-onboarding and keyword-research Claude Skill, where traceability, stable identifiers, and human authority matter more than producing a polished but unsupported answer.

OBJECTIVE
Complete workflow step 2, “Create the versioned Skill folder structure,” and produce this operational outcome: A reusable Claude Skill package with instructions, schemas, examples, and version history. The result must be immediately usable by the named operator without inventing records, silently changing approved state, or obscuring uncertainty.

INPUTS
1. SOURCE RECORDS: {{create_the_versioned_skill_folder_structure_source_records}}
2. FIELD DICTIONARY AND ALLOWED VALUES: {{create_the_versioned_skill_folder_structure_field_dictionary}}
3. OPERATING, PERMISSION, AND DECISION RULES: {{create_the_versioned_skill_folder_structure_operating_rules}}
4. APPROVAL CONTEXT, OWNERS, AND DEADLINES: {{create_the_versioned_skill_folder_structure_approval_context}}
5. PRIOR VERSION, SNAPSHOT, OR CURRENT STATE: {{create_the_versioned_skill_folder_structure_prior_version_or_state}}
Authoritative evidence may include client intake, Google Drive source files, Ahrefs exports, Screaming Frog crawls, approved competitor lists, and Skill regression fixtures.

WORK TO PERFORM
1. Execute the specific job described by “Create the versioned Skill folder structure”; do not broaden the task into a generic strategy exercise.
2. Use the canonical field names and IDs supplied in the inputs, especially client_id, service, location, persona, keyword, intent.
3. Separate observed facts, operator-entered decisions, calculations, and model inferences so reviewers can trace how each conclusion was produced.
4. Return records that can be copied into the versioned client-onboarding and keyword-research Claude Skill without renaming identifiers or collapsing one-to-many relationships.
5. Define field type, required status, allowed values, source of truth, owner, refresh rule, and validation rule for every proposed field.
6. Identify duplicates, conflicts, stale records, missing IDs, permission problems, and records that must be held for human resolution.
7. Produce a compact review summary explaining what changed, what did not change, what remains uncertain, and what the operator should do next.

OUTPUT SCHEMA
Return valid JSON only, using this exact top-level structure:
{
  "workflow_slug": "client-onboarding-keyword-research-claude-skill",
  "step_number": 2,
  "step_title": "Create the versioned Skill folder structure",
  "run_status": "pass|warning|hold|fail",
  "source_records": [
    {"source_id": "string", "source_type": "string", "captured_at": "ISO-8601|null", "authoritative": true, "notes": "string|null"}
  ],
  "records": [
    {"client_id": "value|null", "service": "value|null", "location": "value|null", "persona": "value|null", "keyword": "value|null", "intent": "value|null", "business_eligibility": "value|null", "evidence_source_ids": ["string"], "confidence": "high|medium|low", "review_status": "approved|needs-review|held"}
  ],
  "exceptions": [
    {"record_id": "string|null", "exception_type": "string", "severity": "low|medium|high|critical", "evidence": "string", "owner": "string", "required_action": "string"}
  ],
  "changes_from_prior_state": [
    {"record_id": "string", "field": "string", "prior_value": "value|null", "proposed_value": "value|null", "reason": "string", "source_ids": ["string"]}
  ],
  "review_summary": {"facts": ["string"], "inferences": ["string"], "open_questions": ["string"], "next_actions": [{"action": "string", "owner": "string", "due_date": "YYYY-MM-DD|null"}]},
  "qa": {"schema_valid": true, "ids_preserved": true, "evidence_complete": true, "human_approval_required": true}
}

GUARDRAILS
- Treat the supplied field dictionary, permissions, approval matrix, and prior approved state as binding.
- Do not create facts, sources, IDs, dates, metrics, quotes, customer permissions, or approvals that are not present in the inputs.
- Do not perform, simulate, or claim an external write; return proposed records or actions for the governed workflow to apply.
- Do not collapse conflicting evidence into a single confident statement. Preserve the conflict and identify the required owner.
- flag unsupported keyword assumptions, conflicting service eligibility, crawl anomalies, missing geography, and Skill outputs that fail the versioned test cases.

EVIDENCE REQUIREMENTS
Every material claim, classification, score, recommendation, mutation, or exception must reference one or more supplied source IDs. Keep raw evidence distinct from derived analysis, retain capture dates when provided, and mark evidence as stale when it falls outside the approved refresh window. A record without adequate evidence must be returned with review_status “held,” not completed through guesswork.

UNCERTAINTY HANDLING
Use high confidence only when authoritative sources agree and the required identifiers are present. Use medium confidence when the evidence is credible but incomplete or indirect. Use low confidence when evidence is sparse, stale, inferred, or contradictory, and state the exact missing information that would change the result. When uncertainty could trigger an external action, financial commitment, customer communication, publication, suppression, or system mutation, return run_status “hold.”

HUMAN REVIEW
The SEO strategist and Skill maintainer must review the JSON before any state change or external action. The approval gate is: the SEO strategist reviews business understanding, intent labels, exclusions, prioritization, and the final implementation backlog. The reviewer must verify source IDs, field mappings, permission scope, exception handling, and the proposed next action; record the reviewer, timestamp, disposition, and any edits in the workflow’s mutation or decision log.

Pro workflow preview

Previewing 2 of 14 steps

Pro membership

Unlock the full workflow

Get the remaining 12 steps, copy-paste prompts, pro tips, tool-by-tool setup guidance, and weekly new workflows.

$9/month

Write the business-understanding intake
Create the client workspace and source register
Run and export the technical content crawl
Export current organic and competitor data
Generate and approve the client business model
Normalize and enrich the keyword universe
See Pro plan
3Write the business-understanding intake
Locked
4Create the client workspace and source register
Locked
5Run and export the technical content crawl
Locked
6Export current organic and competitor data
Locked
7Generate and approve the client business model
Locked
8Normalize and enrich the keyword universe
Locked
9Classify intent and business eligibility
Locked
10Cluster keywords by job and page intent
Locked
11Score opportunities with commercial and execution factors
Locked
12Produce the keyword strategy and implementation backlog
Locked
13Run QA against the Skill rubric
Locked
14Refresh data and maintain the Skill
Locked

Expected results

Onboarding production

12-20 hours saved per client

Reusable schemas, prompts, folders, clustering rules, scoring, and QA replace repeated setup and manual synthesis.

Commercial alignment

Keywords constrained by approved business model

Services, audiences, geographies, priorities, exclusions, and conversion paths govern eligibility before volume.

Research traceability

Recommendations linked to source rows and IDs

Raw exports, normalized terms, clusters, URLs, scores, and deliverables retain provenance.

Reusability

Versioned Skill and refresh process

Skill releases, client workspaces, examples, changelogs, and regression tests support repeatable maintenance.

Related workflows

Continue with workflows that share a similar GTM motion, category, or tool stack.