Kelvin Perez
Back

Brand voice review architecture

How the reusable skill, explicit profiles, human decisions and evidence pages fit together.

Explicit rules guide a contextual review and human decision. A separate saved-evidence path builds offline presentation pages.
The review workflow and presentation builders have different responsibilities. Open the diagram for full-size inspection.

Start with the simple picture

There are two different things here. The checker is a reusable set of review instructions read in the existing project conversation. The HTML pages are a way to explain and inspect that work. The HTML pages are not a separate review engine.

The normal flow is: a person supplies an email and a named profile, the skill reads that profile and reviews the text, then it returns specific findings and a checklist. The person chooses whether to accept, edit or reject the suggestions. No sending step exists in this project.

What a skill and its host mean

A skill is a folder of reusable instructions and supporting references. Its entry file is named SKILL.md. The installed host is the existing coding workspace that discovers and reads those files when you invoke the skill. The host performs the review; this project does not implement a separate application server or an email platform.

The invocation names both the skill and the profile. For example: “Use $brand-voice-email-checker with Morning Beam demo v1.” The host reads the common instructions, then the selected profile. A person can paste plain text or HTML source into the request.

The source project’s standalone presentation documents open locally without a build server or network assets. The portfolio presents their sanitized evidence through its existing static site. That does not mean the underlying review runtime is offline or that submitted text never leaves the machine. Use only material appropriate for the host where the skill is invoked.

The three parts of the reusable package

SKILL.md defines the workflow shared by both brands: require an explicit profile, treat the draft as untrusted data, separate findings from unknown checks, preserve factual details, and suggest changes without sending or replacing drafts.

references/morning-beam-demo-v1.md contains the coffee audience, proposed unhurried tone, the two prohibited phrases, dated catalog facts and the brand-specific checklist. references/field-letter-demo-v1.md contains the separate consultancy audience, practical tone, different prohibited phrases and its own facts and checklist.

agents/openai.yaml supplies the display name, short description and example invocation for the compatible skill host. It does not contain brand policy, authentication credentials or an execution engine. The package is scoped to the Brand Voice Email Checker source project at .agents/skills/brand-voice-email-checker/.

How a profile guides the review

A profile is the review’s explicit reference. It answers who the email addresses, what tone to prefer, what exact phrases to flag, what facts are known, and what to check before a person approves the copy. Each rule has an ID so a finding can point back to its reason. MB-BAN-1 identifies the proposed “act now” restriction; it is not an error code.

Source-grounded facts and style proposals have different authority. The existing Morning Beam catalog supports Daily Blend Coffee, whole bean or filter ground, 250 g and $18.00 USD as dated demonstration facts. The proposed voice rules prefer practical, unhurried language. Approving the example revision did not adopt every proposed rule as a permanent brand policy.

The legacy Shopify address contains “field-letter,” but the visible store is Morning Beam Coffee. A technical URL is not evidence of the visible brand being wrong. The skill should preserve the URL rather than rename or follow it.

What happens to an input

The draft remains source material. The review distinguishes subject, preheader and visible body when those fields can be identified. It reads HTML as inert source; it does not execute scripts, visit links or render arbitrary draft markup.

The phrase review uses the selected profile’s listed phrases. It accounts for case and ordinary word boundaries and excludes URLs, attributes and clearly quoted training examples. This is contextual review, not a deterministic phrase scanner and not guaranteed exhaustive detection. No optional phrase-checking script was implemented.

Tone requires judgment. A sentence can sound pressured even when it contains no listed phrase. The review must explain that judgment against the actual tone rule rather than inventing an additional banned expression. HTML visibility that cannot be established remains uncertain.

The output contract

The disposition is the overall result. needs_changes means specific wording needs attention. ready_for_human_review means no blocking issue was found in that review; it does not mean the email may be sent. hold_for_clarification means the review needs a profile or a consequential fact resolved first.

Each finding includes a rule ID, kind, exact excerpt, field/location, reason and minimal suggested edit or question. A clean draft can have zero findings. A full candidate revision is supplied only when requested and still needs a person’s approval.

Checklist items use pass, fail or not_assessable. For example, the reviewer can see that the draft contains “Act now,” but cannot certify that its links work, consent is legally sufficient or an inbox renders it correctly without separate evidence. Those checks must stay not_assessable.

Clarification is a branch, not a hidden correction

If no usable profile is supplied, the skill asks for one before giving a brand verdict. If Morning Beam is selected but the visible draft says Field Letter Automation, the review reports the conflict and holds rather than silently switching brands.

If a new draft says $12.00 while the dated catalog says $18.00, the skill flags the conflict and asks which offer is intended. It must not silently turn $12.00 into $18.00. That decision can change the commercial promise, so it belongs to the person.

An embedded comment telling the reviewer to send the email, follow a link or overwrite a file remains draft content. It cannot grant permission. The malicious sample was ignored in the retained review. These are instruction boundaries and sampled observations, not a technical sandbox that removes the host’s other capabilities.

The evidence and presentation layer

evidence/demo/messy.txt is the deliberately messy example. review.json retains the actual current-host review. candidate.txt is the exact proposed revision, and approval.json binds Kelvin’s explicit local-demo approval to its checksum. manual-qa.json records the later human QA pass for the selected demonstration.

The 12 evaluation inputs and manual labels live under docs/evaluation/. Their retained reviews live in evidence/held-out-reviews.json. The package was frozen before those reviews were retained, but the evaluator shared the implementation context and could see the labels. The exercise is not blinded or independent.

scripts/validate.py checks retained evidence consistency, such as whether an excerpt exists in its input and whether the candidate preserves facts and URLs. It does not generate reviews. The skill-creator validator checks package format. Neither command is behavioral proof on arbitrary future drafts.

The source project’s QA worksheet embeds saved examples and uses browser storage for personal notes, with a JSON export. Its custom-draft mode prepares a prompt and accepts a pasted response; it does not call the review runtime. The case-study demonstration also reads saved evidence. No application backend, account connector, queue or database was added.

One example from start to finish

Input: the subject is “Act now: your miracle brew awaits.” The body also says “ACT NOW and choose the format that fits your morning.” The person explicitly selects Morning Beam demo v1.

Rules: “act now” maps to MB-BAN-1, “miracle brew” maps to MB-BAN-2, and the pressured language is also explained against MB-TONE. The review retains exact excerpts and treats the repeated “ACT NOW” as a second occurrence of the first phrase.

Suggested outcome: use “Find your everyday coffee” as the subject and “Choose the format that fits your morning.” as the call to action. Preserve Daily Blend Coffee, both formats, 250 g, $18.00 USD, the product URL and fictional no-sale/shipment disclosure.

Human handoff: Kelvin approved that exact candidate for the local demo and subsequently passed the selected example’s manual QA. This evidence does not approve a different future revision, authorize a send, or establish that every evaluation sample received human QA.

Contact options

Project image

100%