# Bookends > Both ends of one finished article: the opening that makes a reader want sentence two, and the end-of-article call > to action that closes what the opening opened. Paste the draft; the browser reads the article's type and marks > which hooks fit it, scans the opening, title and ending for the cliche openers and machine-writing tells the skills > disqualify (English and French), decides the CTA archetype from the skill's decision tree, sizes an A/B test and its > run time from your traffic, and checks the button's contrast. Metered runs offer three or four genuinely different > opening hooks with two candidates each and titles the article pays off, then design the CTA - copy, form, > mechanism, an A/B plan and an accessibility check - carrying the opening you chose. Built on the SkillSafe skills > @samber/copywriting-hooks and @samber/copywriting-cta, from samber/cc-skills (MIT), by Samuel Berthe. It never invents a > statistic, a quote, a name or a subscriber count. https://bookends.skillsafe.ai/ ## What is free - The article's type (technical, essay, opinion, tutorial, reported, listicle, analysis, newsletter) and the skill's type-fit table over the eighteen-hook catalog: strong, possible, avoid. - A scan of the opening, the title and the ending for the disqualified openers ("In today's fast-paced world", "Have you ever wondered", "In this article, I'll", unsourced statistics, "Dive into"...), their French equivalents, and the CTA anti-patterns ("Subscribe for more", generic verbs, begging for comments, three equal links, theatrical urgency). - The CTA archetype (A to K) from the skill's decision tree over context, objective and funnel stage, with its flags. - An A/B calculator: readers per variant at 95 percent confidence and 80 percent power, the run time at your readership, and a skip verdict when the test would be theatre. - A WCAG contrast check: 4.5:1 for the button's text, 3:1 for the button against the page. - Exports: the hook fit (.csv), everything worked out (.json); after a run, the CTA as a drop-in accessible HTML block, and the article itself with both ends in place (the chosen title, the chosen opening in place of the first sentence, the CTA after the last paragraph) to copy or download as .md. ## The metered lanes Two tasks on gpt-terra, metered per run, routed by `task`. Input string fields: `task` (hooks or cta), `article`, `brief`, `carry` (cta only: the opening and title chosen) and `facts`. - `hooks` replies with `summary`, `hooks` (three or four, each `name` from the catalog, `lever`, two `candidates`, `commits`), `titles` (three to five, each `formula` and `text`) and `caveats`. - `cta` replies with `summary`, `archetype`, `why`, `copy` (headline, body, button, subtext), `form`, `mechanism`, `ab` (first test, why, sample, next), `accessibility`, `risks`, `next_moves` and `caveats`. The page holds every reply to the skills' rules: catalog hooks with their own levers, one intellectual, one sensory and one reader-direct hook, nothing on the type's avoid list, no disqualified opener, no number the article does not give; the decision tree's archetype, no generic button, proof only from the writer, the A/B figures and contrast ratios copied. ## Links - API tutorial: https://bookends.skillsafe.ai/api.html - Source skills: https://skillsafe.ai/skill/@samber/copywriting-hooks and https://skillsafe.ai/skill/@samber/copywriting-cta