Os Message Evaluator
Separate pre-send check that grades a drafted message against the account record, the readiness policy, the proof register, and the fence, and returns pass or a failure code.
Part of GTM AI OS Kit. Get every file in the kit, plus the guide, in one place.
Where it came from
- Source: Built by Jonathan Kvarfordt. Standalone bundle v0.2.
- Frameworks applied: Act
Why it was chosen
It covers a job one of the eight revenue seats has to finish, and it states its process, decision rules, and output format clearly enough for an agent to follow.
How to use it
- 1.Copy the SKILL.md text below, or download the raw file.
- 2.Create a folder named exactly os-message-evaluator in your agent's skills directory.
- 3.Save the file inside that folder as SKILL.md.
- 4.Ask the agent one of the trigger requests below.
- 5.Check the output against what you already know before it leaves your desk.
Install this skill
- For Claude Code, copy the command below into your terminal. It creates the skill folder and saves the file as SKILL.md.
- For another assistant that supports skills, download the file above and place it in a folder named
os-message-evaluatorinside that assistant's skills directory. - Start a new conversation and ask for the job named on this page. Review the result before using it.
For the supporting files, download the full GTM AI OS Kit package too. The single-file command only installs SKILL.md.
mkdir -p "$HOME/.claude/skills/os-message-evaluator" && curl -fL "https://www.therevenueaireport.com/agent-skills/os-message-evaluator/SKILL.md" -o "$HOME/.claude/skills/os-message-evaluator/SKILL.md"Ask it this
- check this message
- evaluate the draft
- is this safe to send
The SKILL.md file
--- name: os-message-evaluator description: Separate pre-send check that grades a drafted message against the account record, the readiness policy, the proof register, and the fence, and returns pass or a failure code. Use when the user says "check this message", "evaluate the draft", "is this safe to send", "run the evaluator", or whenever a draft's status is pending. --- # os-message-evaluator Judge; never rewrite. The drafter wants a good message. You want the company not embarrassed. Keep those separate. ## Preflight (every run) 1. Confirm `GTM-AI-OS/` is accessible. If not: "I need access to your GTM-AI-OS folder. Select it in Cowork's folder picker, or run `os-install` from the core plugin." Stop until it is. 2. Read `CLAUDE.md`, `INDEX.md`, `context/fence.md`, and the last 20 lines of `signals/log.md`. 3. Check the prerequisites below. For anything missing, ask the cold-start questions and offer: (a) run the earlier skill now, or (b) fast path: answer the questions and this skill writes a minimal version of the missing artifact marked `status: draft (fast path)`. 4. Before any connector write or external send, check `context/fence.md` for the account's bucket and the action. Auto = proceed. Approve = ask. Never = decline and name the row. 5. On finish, update the artifact row in `INDEX.md` (with `[[wikilinks]]` to the files this run read) and append one line to `signals/log.md`: `<date> | <skill> | <files read> | <produced> | <human changed> | <open question>`. ## Prerequisites - A message file with `draft status: pending` and the account record it cites. ## Checks (all must pass) | Check | Pass condition | Failure code | |---|---|---| | Path | The path at the top of the file matches what `readiness.md` allows for this account's scores | path_mismatch | | Evidence | Every claim of pain cites a Verified row; signal-only drafts assert nothing | pain_not_verified | | Freshness | Every cited signal or pain row is inside its expiry | signal_stale | | Contradiction | The message does not contradict any row marked "contradicts hypothesis" | contradiction_ignored | | Architecture | Six beats present in order (five on signal-only) | architecture_incomplete | | Proof | The proof beat matches a proof register entry with external-use permission | proof_missing | | Persona | Each variant asks the question that belongs to its role | persona_generic | | Voice | No banned phrases from `messaging.md` | voice_violation | | Fence | The intended action is allowed for this bucket in `context/fence.md` | fence_violation | | Data | No synthetic or demo data cited | synthetic_data | ## Output Write an Evaluation section at the bottom of the message file: each check, pass or fail, the failing line quoted. Set `draft status: passed` or `draft status: returned (<codes>)`. Log the result. Never set `approved`; only a human does that. ## Hand off Passed: "Ready for human approval. Fence says <Approve or Never> for send." Returned: "Fix the codes and resubmit. Three rounds maximum, then escalate to the rep."
Common questions
- What does the Os Message Evaluator skill do?
- Separate pre-send check that grades a drafted message against the account record, the readiness policy, the proof register, and the fence, and returns pass or a failure code.
- Where does the Os Message Evaluator skill come from?
- Built by Jonathan Kvarfordt. Standalone bundle v0.2.. The source and included files are shown on this page and in the package download.
- Why was the Os Message Evaluator skill chosen for this library?
- It covers a job one of the eight revenue seats has to finish, and it states its process, decision rules, and output format clearly enough for an agent to follow.
- When should the Os Message Evaluator skill not be used?
- Use it only for the job named above. A skill applied outside its scope produces confident output on the wrong question.
- How do I install the Os Message Evaluator SKILL.md file?
- Download the file, create a folder named exactly os-message-evaluator inside your agent's skills directory, and save the file inside it as SKILL.md. The agent loads it when a request matches the description.
Raw file: https://www.therevenueaireport.com/agent-skills/os-message-evaluator/SKILL.md. Plain-language skills with worked examples live in the Skills and Prompts library.
