CtrlK
BlogDocsLog inGet started
Tessl Logo

generate-voice-guide

Generate a personal voice guide for X (Twitter) and/or LinkedIn by scanning a user's past posts and iteratively refining with sample-and-feedback loops. Produces a structured markdown voice guide that sibling skills (create-x-content, create-linkedin-content) consume to draft in-voice posts. Different from brand-voice-extractor, which analyses company blogs/landing pages — this skill is for personal social voice.

61

Quality

72%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/brand/capabilities/generate-voice-guide/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

77%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The content is highly actionable with a well-sequenced, validation-aware workflow, but it is a single monolithic file over 50 lines that could benefit from splitting reference material out, and carries some redundant emphasis. Tightening repeated guidance and externalizing the template/config references would improve the weaker dimensions.

Suggestions

Move the Template Skeleton and Config File schema into separate reference files (e.g. references/template-skeleton.md) referenced one level deep from the body, keeping the overview lean.

De-duplicate the '5+ iterations' guidance so it lives in the workflow and the Tips section only points back rather than restating it.

Trim emphasis commentary (e.g. 'This is where voice-guide quality is made.') that does not change the action.

DimensionReasoningScore

Conciseness

The body is mostly operational and information-dense, but the Tips section restates workflow content ('5+ iterations is the floor') and several emphasis/commentary lines could be tightened.

2 / 3

Actionability

Names concrete, executable specifics — Apify actors 'apidojo/twitter-user-tweets-scraper' and 'harvestapi/linkedin-profile-posts', the 'APIFY_API_TOKEN' env var, exact output paths, default counts, CLI args, and a config JSON schema — fully actionable even without bundled code.

3 / 3

Workflow Clarity

Four clearly sequenced phases with an explicit sample→feedback→revise loop, a defined stopping rule with pushback, token-missing error handling, and a scrape fallback — matching the clear-sequence-with-feedback-loops anchor.

3 / 3

Progressive Disclosure

No bundle files exist and the SKILL.md exceeds 50 lines with the template skeleton and config schema kept inline; sections are well-organized but content that could be split into separate files is not.

2 / 3

Total

10

/

12

Passed

Description

67%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is specific and well-differentiated from a sibling skill, but it lacks an explicit 'Use when…' trigger clause and only partially covers the natural terms a user might say. Adding a trigger clause and broader keyword coverage would lift the weaker dimensions.

Suggestions

Add an explicit 'Use when…' clause naming concrete user intents (e.g. building a personal voice guide, ghostwriting in someone's voice, capturing tone from X/LinkedIn posts).

Broaden trigger terms to include common natural phrasings like 'tone of voice', 'writing style', 'ghostwrite', and 'mimic' alongside 'voice guide'.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'scanning a user's past posts', 'iteratively refining with sample-and-feedback loops', and 'Produces a structured markdown voice guide' — matching the multi-action anchor.

3 / 3

Completeness

Clearly answers 'what' but has no 'Use when...' clause or equivalent explicit trigger guidance; per the rubric this caps completeness at 2.

2 / 3

Trigger Term Quality

Includes relevant natural terms ('voice guide', 'X (Twitter)', 'LinkedIn', 'past posts') but misses common variations a user would say such as 'tone', 'writing style', or 'ghostwrite'.

2 / 3

Distinctiveness Conflict Risk

Explicitly carves a niche — 'Different from brand-voice-extractor, which analyses company blogs/landing pages — this skill is for personal social voice' — making it unlikely to trigger for the wrong skill.

3 / 3

Total

10

/

12

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
gooseworks-ai/goose-skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.