editorial-config
Skill0 starsChanged 7 months agoApache-2.0View on GitHub
Load client context at the start of every command by calling client-context skill. Interpret Drive documents into structured editorial intelligence — competitors, pillars, audience segments, constraints, content history, and performance baselines. Run silently. Never narrate the loading process.
In this repository4 other files it gives its agents.
- calendar-plannerSkill
- client-contextSkill
- competitive-intelSkill
- content-strategistSkill
The file
We split this skill into the rules it gives an agent
11 rules. About 0 are common, 11 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈11
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 126
Always label these as "industry benchmarks" when used.
- Distinctive: line 150
When team size isn't explicitly stated, use these signals:
- Distinctive: line 173
Never ask the user to re-enter information that's in their Drive documents
- Distinctive: line 174
Never use generic "your competitors probably..." when Drive docs have real competitors
- Distinctive: line 175
Never recommend approaches that past content shows were tried and dropped
- Distinctive: line 176
Never narrate the loading process — show the status header only
- Distinctive: line 177
Never block on missing context — flag what's missing and continue
- Distinctive: line 178
Never present industry benchmarks as if they're the client's real data
- Distinctive: line 179
Never make up competitors, segments, or pillars that aren't in the documents
- Distinctive: line 180
Never apply voice rules from one client to another client's context
- Distinctive: line 185
Called by: All commands as the first step
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Editorial Config — Context Loader
Load all available client context before generating any output. Call the client-context skill, then apply editorial interpretation to what's found. This is the bridge between raw documents and actionable editorial intelligence.
Loading Sequence
1. Call client-context skill
→ Reads ~~docs folder
→ Extracts brand, audience, competitor, pillar, performance, operational context
→ Checks active connectors (~~email, ~~crm, ~~calendar, ~~assets)
→ Returns status: 🟢 Configured / 🟡 Partial / ⚪ No client loaded
2. Apply editorial interpretation layer (this skill)
→ From competitor documents: build competitors[] with genuine strengths and weaknesses
→ From strategy/pillar docs: build pillars[] with current health assessment
→ From audience docs: build segments[] with content preference and funnel stage
→ From past content: extract history.biggest_wins and approaches_tested
→ From briefs/calendar: extract constraints (cadence, team, seasonal holds)
→ From performance reports: extract goals.metrics_that_matter
→ From brand guide: extract voice rules, vocabulary, tone adaptation
3. Show status header (one line — never narrate the loading process)Status Header
🟢 [{client name}] | Drive: [{folder}] | Competitors: {N} | Pillars: {N} | Segments: {N}
🟡 [{client name}] | Drive: [{folder}] | Partial — [{what's missing and effect on output}]
⚪ No client loaded — working from what you provide. Run /setup to connect your docs.Interpretation Rules by Domain
Competitors
| Rule | Why |
| Use competitors found in Drive docs — never invent or generalize | Imagined competitors produce imagined analysis |
| Apply genuine_strengths as documented — don't soften | Honest competitive analysis requires honest competitor assessment |
| Flag if competitive doc is > 90 days old | Competitive intelligence has a short shelf life |
| If no competitor doc found: ask for competitors this session, state they're not in Drive | Don't guess — the user knows their market |
| Distinguish between primary competitors (direct) and secondary (adjacent) | Weight analysis toward primary competitors |
| Note competitor content cadence if observable from docs | Calibrates competitive urgency |
Brand Voice
| Rule | Why |
| Extract voice attributes and apply as baseline to all content commands | Voice consistency is the foundation of brand trust |
| Note vocabulary to use (hard constraint) | Brand terms are non-negotiable |
| Note vocabulary to avoid (hard constraint) | Avoided terms exist for reasons — legal, brand, cultural |
| Apply voice rules to /draft, /subjects, /social-pack automatically | The user should never have to re-state their voice |
| If no brand guide: extract patterns from past content, flag as "inferred" | Inferred voice is less reliable than documented voice |
| If brand guide conflicts with past content patterns: prefer the guide | The guide is the intended voice; past content may have drifted |
Voice Adaptation by Command
Different commands need different emphasis from the same voice:
| Command | Voice Emphasis |
| /draft | Full voice application — vocabulary, tone, style rules, headline conventions |
| /subjects | Subject line voice — conciseness constraints override paragraph-level voice rules |
| /social-pack | Platform-adapted voice — LinkedIn more professional, Twitter/X more punchy, but both recognizably the same brand |
| /audit | Analytical voice — the output is for the strategist, not the audience |
| /competitor | Analytical voice — honest, not promotional |
| /calendar | Planning voice — clear, operational, decision-ready |
Content Pillars
| Rule | Why |
| Extract pillar themes from strategy docs and content patterns | Pillars are the structural foundation of editorial planning |
| Assess health from piece count, performance, and competitive position | Health determines where to invest |
| Use four health statuses: Healthy / Developing / Thin / Untested | Anything more granular is false precision |
| If no strategy doc: infer pillars from recurring topics in last 5 newsletters | Better to infer than to ignore |
| Flag inferred pillars clearly — they're hypotheses, not commitments | User should confirm before building a quarter around them |
| Note pillar overlap — some topics span multiple pillars | Prevents double-counting in audits |
Pillar Health Assessment Criteria
| Status | Signals |
| Healthy | 10+ pieces covering multiple angles; at least one top performer; competitive position is strong; directly aligned with primary goal |
| Developing | 5-10 pieces; some engagement but no standout; building competitive position; clear goal connection |
| Thin | < 5 pieces or single angle only; no standout performer; competitors are stronger here; goal connection is clear but underserved |
| Untested | 0 pieces; unknown audience response; unknown competitive position; goal connection is hypothetical |
Audience Segments
| Rule | Why |
| Use segment names from persona docs — don't rename them | Consistency with the client's internal language |
| Map each segment to content preferences if documented | Enables segment-specific recommendations |
| Note funnel stage for each segment | Aligns content type to buying stage |
| If segments are documented differently across docs: use the most recent | Segment definitions evolve |
| If no segments documented: note "general audience" and flag | Segment-specific recommendations require segment data |
Email Context
| Rule | Why |
| If ~~email connected: pull real open rates, click rates, list size | Real data beats industry benchmarks |
| Use real benchmarks, not industry averages, when real data exists | "Your 22% open rate" is more useful than "industry average 18-22%" |
| Apply subject line rules from brand guide if documented | Subject lines are brand expression |
| If no email data: label all performance predictions as "estimated" | Never present guesses as data |
| Note list size for audience context | A 500-person list has different dynamics than a 50,000-person list |
Email Benchmarks (Use Only When No Real Data Available)
| Metric | General Benchmark | B2B Benchmark | B2C Benchmark |
| Open rate | 18-25% | 20-28% | 15-22% |
| Click-through rate | 2-5% | 2-4% | 3-5% |
| Click-to-open rate | 10-17% | 10-15% | 12-18% |
| Unsubscribe rate | < 0.5% | < 0.3% | < 0.5% |
| List growth rate (monthly) | 2-5% | 2-4% | 3-6% |
Always label these as "industry benchmarks" when used. Never present them as if they're the client's data.
Content History
| Rule | Why |
| Extract "what worked" from past newsletters and performance reports | Repeat and amplify proven approaches |
| Extract "what failed" from retrospective docs or performance drops | Don't recommend what's already been tried and abandoned |
| Note content formats that have been used vs. not used | Format gaps are opportunities or deliberate choices |
| Identify recurring topics vs. one-off experiments | Recurring topics signal pillar commitment |
| Note seasonal patterns in past publishing | Build into /calendar planning |
Operational Constraints
| Rule | Why |
| Extract cadence from briefs and calendar documents | Capacity ceiling — never plan beyond what the team can execute |
| Extract team signals from brief language | "I write everything" = solo operation. "The team" = at least 2-3 people. |
| Respect blackout periods in calendar or strategy docs | These are hard constraints, not suggestions |
| Only reference channels that appear in client's documents | Don't recommend TikTok to a B2B newsletter operation |
| Note publishing tools in use (Beehiiv, WordPress, etc.) | Practical context for execution recommendations |
Team Size Heuristics
When team size isn't explicitly stated, use these signals:
| Signal | Likely Team Size | Capacity Implication |
| "I" throughout briefs, single byline | Solo creator | 1-2 pieces/week max, no parallel production |
| "We" with 1-2 bylines | 2-3 person team | 2-4 pieces/week, some parallel production |
| Multiple bylines, departments mentioned | Full content team | 5+ pieces/week, parallel production possible |
| Agency/consultant language | External team | Variable — ask about hours allocated |
When Documents Are Ambiguous
| Situation | Action |
| Multiple strategy docs | Synthesize, prefer most recent by modified date |
| Competitors mentioned in passing (not in dedicated doc) | Include with lower confidence, flag |
| No clear cadence signal | Ask once in the command output, don't block |
| Conflicting audience descriptions | Note the conflict, use most recent document |
| Brand guide says one thing, past content shows another | Prefer the guide (intended voice); note the drift |
| Performance data exists but is > 90 days old | Use for patterns, flag as potentially stale |
| Documents are in another language | Extract what you can, note language barrier |
Never Do
- Never ask the user to re-enter information that's in their Drive documents
- Never use generic "your competitors probably..." when Drive docs have real competitors
- Never recommend approaches that past content shows were tried and dropped
- Never narrate the loading process — show the status header only
- Never block on missing context — flag what's missing and continue
- Never present industry benchmarks as if they're the client's real data
- Never make up competitors, segments, or pillars that aren't in the documents
- Never apply voice rules from one client to another client's context
Cross-Skill Dependencies
- Calls: client-context (reads Drive, extracts raw context)
- Called by: All commands as the first step
- Feeds into: content-strategist (pillar health, gaps, history)
- Feeds into: competitive-intel (competitor list, strengths, weaknesses)
- Feeds into: calendar-planner (constraints, cadence, seasonal data)
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

