@maestroagora/agora 1.3.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "maestro-agora",
3
- "description": "Self-hosted marketplace for Maestro: Agora, the argument-first persuasion skill.",
3
+ "description": "Self-hosted marketplace for Maestro: Agora, the argument-first persuasion, technical explanation, case-study, and investment-writing skill.",
4
4
  "owner": {
5
5
  "name": "Mark Laursen",
6
6
  "url": "https://github.com/mbanderas"
@@ -9,7 +9,7 @@
9
9
  {
10
10
  "name": "maestro-agora",
11
11
  "source": "./",
12
- "description": "Turn verified facts into consequential commercial, editorial, interface, and spoken arguments for the real decision."
12
+ "description": "Write consequential commercial, technical, case-study, investment, interface, and spoken arguments for the real decision without inventing results."
13
13
  }
14
14
  ]
15
15
  }
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "maestro-agora",
3
- "version": "1.3.0",
3
+ "version": "1.5.0",
4
4
  "displayName": "Maestro: Agora",
5
- "description": "Use /agora for argument-first buyer, investor, positioning, editorial, interface, and spoken copy grounded in verified facts.",
5
+ "description": "Use /agora for persuasive writing, technical explanation, compelling case studies, fundraising, investment analysis, and spoken or written copy.",
6
6
  "author": {
7
7
  "name": "Mark Laursen",
8
8
  "url": "https://github.com/mbanderas"
@@ -15,6 +15,12 @@
15
15
  "agora",
16
16
  "marketing",
17
17
  "copywriting",
18
+ "science-communication",
19
+ "technical-writing",
20
+ "case-studies",
21
+ "fundraising",
22
+ "investor-communications",
23
+ "pitch-decks",
18
24
  "claude-code",
19
25
  "geo",
20
26
  "aeo"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "maestro-agora",
3
- "version": "1.3.0",
4
- "description": "Maestro: Agora turns verified facts into consequential, channel-native arguments without outrunning the proof.",
3
+ "version": "1.5.0",
4
+ "description": "Maestro: Agora writes clear persuasion, technical explanations, compelling case studies, and investment communication without making up results.",
5
5
  "author": {
6
6
  "name": "Mark Laursen",
7
7
  "url": "https://github.com/mbanderas"
@@ -13,14 +13,20 @@
13
13
  "agora",
14
14
  "marketing",
15
15
  "copywriting",
16
+ "science-communication",
17
+ "technical-writing",
18
+ "case-studies",
19
+ "fundraising",
20
+ "investor-communications",
21
+ "pitch-decks",
16
22
  "codex",
17
23
  "skills"
18
24
  ],
19
25
  "skills": "./skills/",
20
26
  "interface": {
21
27
  "displayName": "Maestro: Agora",
22
- "shortDescription": "Argument-first copy that earns belief",
23
- "longDescription": "Install Maestro: Agora in Codex for a direct /agora skill that builds consequential buyer, investor, positioning, editorial, interface, and spoken arguments from verified facts.",
28
+ "shortDescription": "Persuasion, science, cases, and capital",
29
+ "longDescription": "Install Maestro: Agora in Codex for a direct /agora skill that writes consequential commercial arguments, clear technical explanations, compelling case studies, and investment communication without inventing results.",
24
30
  "developerName": "Mark Laursen",
25
31
  "category": "Productivity",
26
32
  "capabilities": [
@@ -31,9 +37,10 @@
31
37
  "brandColor": "#7C3AED",
32
38
  "composerIcon": "./assets/icon.png",
33
39
  "defaultPrompt": [
34
- "/agora position Turn these facts into a consequential company description. Keep investor relevance implicit.",
35
- "/agora sell Build the strongest supported buyer argument for this surface, then give one useful next action.",
36
- "/agora invest Build the capital case from timing, mechanism, proof, and what this round changes."
40
+ "/agora sell Write the strongest truthful hero these product facts and destination can support.",
41
+ "/agora science Explain this technical subject clearly without overstating what the research found.",
42
+ "/agora case study Turn this approved project record into a clear, properly attributed case study.",
43
+ "/agora invest Build this fundraising asset from the supplied results, risks, and plan without inventing traction or urgency."
37
44
  ]
38
45
  }
39
46
  }
package/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  <p align="center">
2
- <img src="assets/maestro-agora-banner.png" alt="The Maestro mascot writing with a gold fountain pen as evidence cards become a finished page" width="100%" />
2
+ <img src="assets/maestro-agora-banner.png" alt="The Maestro mascot turning rough notes into a finished page with a gold fountain pen" width="100%" />
3
3
  </p>
4
4
 
5
5
  <h1 align="center">Maestro: Agora</h1>
6
6
 
7
- <p align="center"><strong>Verified truth, conducted into copy.</strong></p>
7
+ <p align="center"><strong>Say what matters. Make it land.</strong></p>
8
8
 
9
9
  <p align="center">
10
10
  <a href="https://github.com/mbanderas/maestro-agora/actions/workflows/validate.yml"><img alt="Validation status" src="https://github.com/mbanderas/maestro-agora/actions/workflows/validate.yml/badge.svg" /></a>
@@ -12,17 +12,33 @@
12
12
  <a href="LICENSE"><img alt="MIT license" src="https://img.shields.io/badge/license-MIT-7c3aed" /></a>
13
13
  </p>
14
14
 
15
- Words cannot rescue a missing argument. Agora starts with the decision behind the copy.
15
+ Agora helps you turn what your business does, knows, sells, or explains into writing people can understand and act on. It does not make up real-world facts. When fiction, mock work, or a concept is the assignment, Agora can invent within the brief and keeps that status clear.
16
16
 
17
- Give it verified facts, the real audience, and the surface where the copy will live. Agora finds the consequential shift or stake, explains the mechanism that changes it, selects the proof that matters most, and turns that case into channel-native copy. The result can feel urgent, ambitious, reassuring, or direct. It cannot outrun the evidence.
17
+ It starts with the decision behind the copy. Who must understand, believe, choose, approve, fund, or do something next? Agora finds the consequential stake, explains why the subject matters, chooses the details that move the decision, and writes for the actual channel.
18
18
 
19
- Use Agora for landing pages, ads, company profiles, investor narratives, sales emails, product copy, paywalls, editorial work, interface text, and spoken scripts.
19
+ Use it for landing pages, heroes, ads, product copy, sales outreach, investor communication, scientific and technical explanation, case studies, company profiles, editorial work, interface text, and spoken scripts.
20
20
 
21
- **One suite: fuse the answer, make the case, guard the spend.**
21
+ ## What Agora adds
22
22
 
23
- - **[Maestro Frontier](https://github.com/mbanderas/maestro):** Fuses the model CLIs you already run into one judged, grounded answer.
24
- - **[Maestro Agora](https://github.com/mbanderas/maestro-agora):** Turns verified product truth into concise, argument-first copy without inventing the proof.
25
- - **[Maestro CostGuard](https://github.com/mbanderas/costguard):** Audits CI and cloud infrastructure for cost leaks and shows what to fix.
23
+ | Capability | What it controls |
24
+ |---|---|
25
+ | Persuasion | Argument, consequence, reason to believe, CTA, channel fit, and truthful rhetorical force |
26
+ | Heroes and short sales copy | Awareness, claim saturation, traffic source, promise grammar, destination fidelity, and the complete first-screen composition |
27
+ | `SCIENCE` | Scientific certainty, causal language, statistics, mechanisms, uncertainty, analogies, visuals, sources, and limits |
28
+ | `CASE_STUDY` | Real projects, fictional mocks, and concept portfolios with distinct invention, attribution, causality, permission, and disclosure controls |
29
+ | `INVEST` | Fundraising, diligence, and capital-allocation communication without invented traction, urgency, commitments, or inevitability |
30
+ | `VOICE` | A measured first-party voice profile that stays subordinate to the facts and required language |
31
+ | Written GEO/AEO | Clear entities, self-contained passages, source transparency, and relevant publication checks |
32
+
33
+ Agora returns one ready-to-use result by default. Alternatives, internal routes, and rationale stay out of the final copy unless requested.
34
+
35
+ ## When buyers ask AI, is your brand part of the answer?
36
+
37
+ More decisions now start inside an AI answer. Buyers ask for comparisons, explanations, and recommendations; brands either enter that answer or they do not.
38
+
39
+ [CiteSurge](https://citesurge.com/) tracks how your brand and competitors appear across ChatGPT, Claude, Perplexity, Gemini, Google AI Overviews, Bing Copilot, and Grok. Run Prompt Scans for the questions your customers may ask. Measure competitive Share of Voice. See which brands and sources shape each answer. Then turn what you find into prioritized Content Recommendations and keep monitoring the same prompts as the competitive picture changes.
40
+
41
+ **[Find out where your brand stands when buyers ask AI.](https://citesurge.com/)**
26
42
 
27
43
  ## Install
28
44
 
@@ -37,17 +53,12 @@ The default user install writes the same reviewed skill to:
37
53
  - `~/.agents/skills/agora` for Codex and Agent Skills-compatible tools.
38
54
  - `~/.claude/skills/agora` for Claude Code.
39
55
 
40
- Install only the user-level Codex skill:
41
-
42
- ```sh
43
- npx -y @maestroagora/agora --target codex --scope user
44
- ```
45
-
46
56
  Open a new task or restart the host after installation so its skill registry and slash menu reload.
47
57
 
48
- Choose a target or project-local scope when needed:
58
+ Install one target or use project-local scope:
49
59
 
50
60
  ```sh
61
+ npx -y @maestroagora/agora --target codex --scope user
51
62
  npx -y @maestroagora/agora --target cursor --scope project
52
63
  npx -y @maestroagora/agora --target codex,claude --scope user
53
64
  npx -y @maestroagora/agora --target universal --dry-run
@@ -77,136 +88,181 @@ codex plugin marketplace add mbanderas/maestro-agora
77
88
  codex plugin add maestro-agora@maestro-agora
78
89
  ```
79
90
 
80
- The npm installer is the broadest route across IDEs. Native plugin commands use the matching Claude or Codex manifest from this repository.
91
+ The npm installer provides the broadest host coverage. Native plugin commands use the matching Claude or Codex manifest from this repository.
81
92
 
82
- ## Use Agora
93
+ ## Quick start
83
94
 
84
- Invoke the skill directly and provide the facts it may use:
95
+ Invoke Agora directly and provide the facts it may use:
85
96
 
86
97
  ```text
87
98
  /agora Rewrite this upgrade screen. Make the blocked action matter, state the plan difference clearly, and use one supported CTA.
88
99
  ```
89
100
 
90
- Choose a mode when you want to override inference:
101
+ Choose a primary mode when you want to override inference:
91
102
 
92
103
  ```text
93
- /agora position Turn these verified facts into a 35-word company profile.
94
- /agora sell Build a homepage hero around the strongest buyer stake this evidence supports.
95
- /agora invest Write a one-paragraph capital case from timing, mechanism, proof, and use of funds.
96
- /agora inform Explain this research finding for a public article.
104
+ /agora position Turn these business facts into a 35-word company profile.
105
+ /agora sell Build a homepage hero around the strongest buyer stake these product facts support.
106
+ /agora invest Write a fundraising opening from the current results, risks, and purpose of the round.
107
+ /agora inform Explain this research finding for a public audience.
97
108
  /agora transact Rewrite this confirmation so the state and next action are unmistakable.
98
109
  ```
99
110
 
100
- In Codex, `$agora` and the skills picker can also select the installed skill. Other hosts may expose skills through a picker or mention syntax. Asking the agent to "use the Agora skill" remains portable.
101
-
102
- ## How the persuasion engine works
103
-
104
- Agora reasons through a variable-depth path:
111
+ Add modifiers when the subject or asset needs them:
105
112
 
106
113
  ```text
107
- situation -> stake -> criterion when useful -> mechanism -> proof -> destination belief -> next step
114
+ /agora sell science Write a technical product hero without hiding material uncertainty.
115
+ /agora inform science Explain this study for a general audience.
116
+ /agora sell case study Write a customer success case from this approved project record.
117
+ /agora inform science case study Explain this engineering implementation and its measured limits.
118
+ /agora invest science Build a deep-tech capital case from the supplied study and scale-up results.
119
+ /agora invest case study Use this approved customer case in an investor brief without overstating attribution.
120
+ /agora sell --voice house Rewrite this page in the measured house profile.
108
121
  ```
109
122
 
110
- That path stays internal. It is not a paragraph template.
123
+ In Codex, `$agora` and the skills picker can also select the installed skill. Other hosts may expose skills through a picker or mention syntax. Asking the agent to use the Agora skill remains portable.
111
124
 
112
- - Very short copy pairs the strongest market shift, felt stake, or live consequence with the strongest verified differentiator.
113
- - Medium copy adds the mechanism and the proof clue or qualifier that matters most.
114
- - Long copy expands only when another fact resolves a real objection or expensive uncertainty.
125
+ ## Routing model
115
126
 
116
- This keeps a 35-word profile from sounding like a compressed pitch deck. It also keeps a full investor narrative from collapsing into a feature list.
127
+ Agora chooses a primary mode first, then the publication surface, then any domain or asset modifiers. `VOICE` enters afterward and cannot override the facts, material uncertainty, or required language.
117
128
 
118
- ### Mode routing
129
+ ### Primary modes
119
130
 
120
131
  | Mode | Use or infer it for |
121
132
  |---|---|
122
133
  | `POSITION` | Company profiles, directories, About copy, website summaries, category narratives, and objective descriptions |
123
134
  | `SELL` | Marketing, sales, ads, landing pages, product pages, outreach, upgrades, and paywalls |
124
- | `INVEST` | Actual funding, capital-allocation, diligence, investor-pitch, and fundraising work |
125
- | `INFORM` | Editorial and educational work |
135
+ | `INVEST` | Actual funding, diligence, investor-pitch, and capital-allocation decisions |
136
+ | `INFORM` | Editorial, educational, scientific, and technical explanation |
126
137
  | `TRANSACT` | Buttons, confirmations, alerts, forms, and utility microcopy |
127
- | `VOICE` | A modifier on any of the above, not a job of its own. `--voice <name>` writes in a measured author profile |
128
138
 
129
- `POSITION` is the default for descriptive company profiles, even when investors may read them. Agora makes relevance emerge from the shift, mechanism, wedge, and proof. It does not insert phrases such as "for investors" or "merits evaluation."
139
+ `POSITION` remains the default for descriptive company profiles, even when investors may read them. Directory placement does not convert an objective profile into a capital pitch.
140
+
141
+ ### Composable modifiers
142
+
143
+ | Modifier | Function |
144
+ |---|---|
145
+ | `SCIENCE` | Adds empirical or technical accuracy, explanation, and uncertainty rules |
146
+ | `CASE_STUDY` | Adds case-study structure, result, attribution, permission, and confidentiality rules |
147
+ | `VOICE` | Applies an authorized measured voice profile |
148
+
149
+ The modifiers can compose. A technical fundraising case may use `INVEST + SCIENCE + CASE_STUDY`. A founder-voiced scientific product video may use `SELL + SCIENCE + VOICE + HYBRID`.
150
+
151
+ ### Surfaces
130
152
 
131
- ### Proof salience
153
+ | Surface | Treatment |
154
+ |---|---|
155
+ | `INDEXABLE_PUBLIC` | Public claim review, human-voice and GEO/AEO passes, then relevant technical publication checks |
156
+ | `PUBLIC_NON_INDEXABLE_WRITTEN` | Public claim review, clear written structure, and human-voice pass; no crawl or index checks |
157
+ | `WRITTEN_PRIVATE` | Factual fidelity, channel fit, concrete meaning, and human-voice pass |
158
+ | `SPOKEN_ONLY` | Factual review, cadence, breath, timing, and listener comprehension; no GEO/AEO formatting |
159
+ | `HYBRID` | Spoken delivery and each written derivative are routed separately |
160
+
161
+ Titles, descriptions, captions, show notes, transcripts, and companion pages receive written treatment. Spoken narration stays free of search-format scaffolding.
162
+
163
+ ## How the argument works
132
164
 
133
- Agora ranks facts by decision relevance, differentiation, verifiability, specificity, compression value, and omission risk.
165
+ Agora reasons through a variable-depth path:
166
+
167
+ ```text
168
+ situation -> stake -> criterion when useful -> mechanism -> reason to believe -> destination belief -> next step
169
+ ```
134
170
 
135
- It keeps the facts that change the decision. A measured outcome may outrank five minor features. A named list of supported engines may be the proof when scope is the decision. Diagnostic enumeration stays. Decorative feature volume goes.
171
+ This path is not a paragraph template.
136
172
 
137
- ### Emotion without invention
173
+ - Short copy pairs the strongest live consequence with the strongest supplied differentiator.
174
+ - Medium copy adds the mechanism and the result, detail, or qualification that matters most.
175
+ - Long copy expands only when another fact resolves a real objection or expensive uncertainty.
138
176
 
139
- Agora chooses one dominant emotional job, such as tension, relief, control, ambition, belonging, or curiosity. It expresses that feeling through a real situation, a supportable consequence, and available agency.
177
+ Agora ranks supporting details by decision relevance, differentiation, specificity, reliability, compression value, and omission risk. It keeps facts that change the decision, not facts that merely fill the page.
140
178
 
141
- It never manufactures fear, urgency, scarcity, loss, social proof, intimacy, or certainty. Emotion makes the facts consequential. It does not replace them.
179
+ ## Heroes and short-form sales copy
142
180
 
143
- ## Surface routing
181
+ A hero is one distributed argument, not a headline contest. Agora evaluates:
144
182
 
145
- Mode and surface are separate decisions.
183
+ - Optional eyebrow.
184
+ - Headline.
185
+ - Subhead.
186
+ - Primary and optional secondary CTA.
187
+ - Result or qualification microcopy.
188
+ - Visual, demo, or result context.
189
+ - Immediate next section.
146
190
 
147
- | Surface | Treatment |
191
+ It distinguishes a truth gate from a persuasive target. Accurate but generic copy does not pass because it avoided a false claim.
192
+
193
+ `SELL` on a first-attention surface normally receives a commercially assertive treatment. Mid-funnel explanation receives a persuasive-explanatory treatment. Promotional intensity requires real urgency, novelty, availability, or outcome results supplied in the brief. Missing support causes a lower treatment, not invented force.
194
+
195
+ Promise grammar matters. `See X`, `Learn how to X`, `We help you X`, `Do X more often`, `You will X`, and an imperative such as `Beat X` require different facts, conditions, and levels of support. CTA language must match the destination and its real commitment level.
196
+
197
+ ## Scientific and technical communication
198
+
199
+ `SCIENCE` supports three internal routes:
200
+
201
+ | Route | Subject |
148
202
  |---|---|
149
- | `INDEXABLE_PUBLIC` | Public claim review, human-voice and GEO/AEO passes, then relevant technical publication checks |
150
- | `PUBLIC_NON_INDEXABLE_WRITTEN` | Public claim review, written evidence structure, and human-voice pass; no crawl or index checks |
151
- | `WRITTEN_PRIVATE` | Proof fidelity, channel fit, concrete meaning, and human-voice pass |
152
- | `SPOKEN_ONLY` | Proof review, cadence, breath, timing, and listener comprehension; no GEO/AEO formatting |
153
- | `HYBRID` | Spoken delivery and each written derivative are routed separately |
203
+ | `EMPIRICAL` | Studies, experiments, observations, measurements, and findings |
204
+ | `TECHNICAL` | Systems, interfaces, architecture, mechanisms, dependencies, and failure behavior |
205
+ | `MIXED` | Measured findings plus technical mechanism |
154
206
 
155
- Published titles, descriptions, transcripts, captions, show notes, and companion pages receive written treatment. Spoken-only delivery stays free of search-format scaffolding.
207
+ Material claims remain classified as observation, established fact or consensus, model, interpretation, implication, recommendation, hypothesis, speculation, or unknown. Simplification cannot move a claim upward in certainty.
156
208
 
157
- ## Silent safeguards
209
+ Agora preserves study design, population, comparator, baseline, denominator, absolute and relative effects, material uncertainty, and the difference between statistical and practical significance when they matter. Correlation stays separate from causation. One study stays separate from replication or consensus.
158
210
 
159
- Agora builds the argument before it runs publication and style checks. Those checks remain invisible unless the delivered copy would otherwise be misleading, legally unusable, or operationally unshippable.
211
+ Misconception hooks, question-first explanation, analogies, visuals, and alternating narrative threads are optional tools with explicit failure conditions. A misconception cannot be invented for suspense. An analogy must say what maps, what does not, and where it breaks.
160
212
 
161
- - Unsupported claims are narrowed or removed, not buried under a disclaimer.
162
- - Facts, inference, interpretation, aspiration, and promises remain distinct.
163
- - GEO/AEO improves written clarity and evidence structure after the argument exists.
164
- - Human-voice cleanup removes prompt leakage, canned templates, generic significance tails, and smart quotes. A separate hard invariant bans U+2014 from the entire generated response, including copied text and commentary, with a mandatory final character scan.
165
- - Necessary factual series survive the cleanup.
166
- - One ready-to-use result comes first. Near-duplicate variants appear only when requested.
213
+ ## Case studies built around what happened
167
214
 
168
- The skill improves writing discipline. It does not replace source review, legal review, or final human judgment.
215
+ `CASE_STUDY` supports:
169
216
 
170
- ## Written GEO/AEO boundaries
217
+ | Family | Primary focus |
218
+ |---|---|
219
+ | `CUSTOMER_SUCCESS` | Buyer problem, intervention, measured result, attribution, and decision relevance |
220
+ | `CREATIVE_PORTFOLIO` | Brief, constraints, insight, concept, role, decisions, execution, and results |
221
+ | `TECHNICAL_IMPLEMENTATION` | System constraint, alternatives, architecture, rollout, failure modes, observed performance, and tradeoffs |
222
+
223
+ Case family and project status are separate:
171
224
 
172
- For written assets, Agora answers the reader's question early when the format calls for it, names entities and scope, keeps proof beside claims, exposes real provenance, and builds useful passages that remain accurate when quoted alone.
225
+ | Project status | What Agora permits |
226
+ |---|---|
227
+ | Real project | Uses only the supplied project history, roles, artifacts, quotes, permissions, measurements, and results |
228
+ | Fictional mock | Invents a coherent case inside an explicitly fictional, mock, synthetic, demo, or sample brief |
229
+ | Concept portfolio | Invents a self-initiated or speculative scenario without implying a real client, commission, approval, shipped state, research record, or measured outcome |
173
230
 
174
- For indexable public pages, Agora can also flag relevant crawlability, canonical, sitemap, metadata, structured-data, accessibility, and delivery checks. These practices can improve eligibility and citability. They cannot promise retrieval, selection, quotation, citation, ranking, recommendation, referral, conversion, or revenue.
231
+ Fiction is not a workaround for missing facts in a real case. Fictional and concept work stays visibly labeled wherever a reader could mistake it for real project history. Illustrative metrics remain illustrative. Real identities, quotations, endorsements, and confidential material keep their normal truth and permission controls.
175
232
 
176
- ## AI visibility after publication
233
+ Every result is classified before writing: measured outcome, customer-reported outcome, observed process or adoption change, supported inference, target, pending measurement, or unmeasured.
177
234
 
178
- Agora turns verified facts into argument-first copy. It does not measure whether AI answers mention your brand or cite your sources. [CiteSurge](https://CiteSurge.com) is a separate platform for citability engineering and cross-engine AI visibility tracking.
235
+ Delivery activity cannot become business impact. Chronology cannot become causality. When outcome data is missing, Agora writes an honest account of the work and what remains unmeasured instead of manufacturing a triumphant ending.
179
236
 
180
- ## How Agora works
237
+ Permission is tracked separately for names, logos, roles, quotes, metrics, screenshots, and implementation details. `PENDING` material stays internal or is omitted. `PROHIBITED` material never appears. Quotes cannot be repaired into stronger endorsements, combined into synthetic praise, or stripped of material connections and typicality limits.
181
238
 
182
- <p align="center">
183
- <img src="assets/agora-orbit.svg" alt="Animated flow from verified truth and evidence through argument, proof, voice, and action into ready copy" width="100%" />
184
- </p>
239
+ Academic and clinical case reports remain outside this capability.
185
240
 
186
- The skill itself stays intentionally small:
241
+ ## Investment communication
187
242
 
188
- ```text
189
- skills/agora/
190
- ├── SKILL.md
191
- ├── agents/
192
- │ └── openai.yaml
193
- └── references/
194
- ├── agora-craft.md
195
- ├── agora-marketing.md
196
- └── agora-voice.md
197
- ```
243
+ `INVEST` remains one primary mode with three internal routes:
198
244
 
199
- `SKILL.md` is the concise operating contract. `references/agora-marketing.md` holds the original doctrine, research evidence grades, ethical limits, channel rules, AI-writing-tell controls, GEO/AEO boundaries, examples, and evaluation guidance.
245
+ | Route | Decision |
246
+ |---|---|
247
+ | `FUNDRAISE` | A company seeking capital |
248
+ | `DILIGENCE` | Testing an investment case |
249
+ | `ALLOCATE` | Comparing or recommending capital allocation |
250
+
251
+ Agora separates historical results, current state, contracted commitments, customer reports, forecasts, targets, model assumptions, interpretations, scenarios, and unknowns. It also keeps revenue, bookings, pipeline, contracted value, collected cash, retention, margin, burn, runway, market size, and valuation measures distinct.
252
+
253
+ It can produce warm introductions, direct outreach, spoken openings, decks, briefs, demos, follow-ups, diligence memos, investment-committee briefs, data-room narratives, and progress updates. It does not impose a universal deck order, deck length, meeting script, talk ratio, outreach rule, or opening duration.
200
254
 
201
- `references/agora-craft.md` is loaded only when the task needs it. It covers four narrower domains: headlines and titles across each publishing surface, awareness and sophistication staging with its routing table, emotion written from a fact set that contains no outcome data, and prose rhythm. Every rule in it carries an evidence grade and a stated failure condition, every number is either sourced or labelled a governance default, and the two cadence conflicts the research left open are recorded rather than resolved.
255
+ Strong fundraising communication makes the decision, present position, remaining risk, purpose of the capital, and next milestone clear. It never invents traction, warm access, investor interest, scarcity, commitments, consensus, or an inevitable future.
202
256
 
203
- `references/agora-voice.md` governs `VOICE`, the one mode that modifies another rather than replacing it. `--voice <name>` loads a measured author profile on top of whichever job was already selected, and `voice build`, `voice list`, and `voice check` manage the profiles themselves. A profile is measured rather than described: it records sentence and paragraph distributions, function words, punctuation, openings, and stance, states plainly what the corpus was too small to measure, and refuses certification below 5,000 clean author-controlled words.
257
+ A valid weakness remains visible until new results resolve it. Reframing may change context, not the underlying fact.
204
258
 
205
- Profiles are stored at `~/.agora/voices/`, deliberately outside the skill directory, because the documented update path replaces that directory and would destroy them. Voice enters at level 6 of the conflict hierarchy: it never licenses an unsupported claim, never overrides required or legal phrasing, and never overrides the em-dash ban. It carries exactly one exception, written down because the alternative is a gate that strips the voice it was loaded to keep: a profile's measured owned-vocabulary list suppresses the generic AI-vocabulary ban for those specific words only. Building or applying a third-party profile for publication under that person's name is refused.
259
+ Investment writing is not legal advice. Securities-law status, offering mechanics, solicitation rules, investor eligibility, and disclosure obligations require current authoritative verification and qualified counsel where applicable.
206
260
 
207
- ### Building a voice profile
261
+ ## Measured voice profiles
208
262
 
209
- Measurement is computed by a shipped engine, not estimated by the model, because a model asked to describe an author's voice writes flattery:
263
+ `VOICE` modifies another mode rather than replacing it. Profiles are measured from authorized first-party writing, not improvised from adjectives.
264
+
265
+ Build and inspect a profile with the shipped engine:
210
266
 
211
267
  ```sh
212
268
  npx -p @maestroagora/agora agora-voice build --name house \
@@ -217,33 +273,107 @@ npx -p @maestroagora/agora agora-voice list
217
273
  npx -p @maestroagora/agora agora-voice check --voice house ./draft.md
218
274
  ```
219
275
 
220
- The engine reads Markdown, plain text, and HTML from files, directories, and URLs. It refuses binary document formats by name rather than extracting them partially, because every admission threshold counts clean author-controlled words and a partial extraction would move all of them silently. Quotations, code, tables, signatures, front matter, and headings are stripped before anything is counted, and the profile records what the cleaning removed.
276
+ The engine reads Markdown, plain text, and HTML from files, directories, and URLs. It removes quotations, code, tables, signatures, front matter, and headings before measurement. Binary document formats are refused by name rather than partially extracted.
221
277
 
222
- It measures nine feature families: sentence length with percentiles and binned shape, clause structure as a labelled conjunction proxy, function words, punctuation, paragraph shape, lexical diversity by moving-window and decay-based measures, person and stance, sentence openings, and contraction rate scoped to contexts where both forms were grammatical. Raw type-token ratio is withheld by rule, since it falls mechanically as texts grow. Anything the corpus cannot support is written as insufficient data.
278
+ A profile records sentence and paragraph distributions, function words, punctuation, openings, stance, contraction behavior, and supported vocabulary. It states what the corpus was too small to measure and refuses certification below 5,000 clean author-controlled words.
223
279
 
224
- Four admission gates run before a profile is certified: at least 10 independent documents with none above 25 percent of clean tokens, 2,500 clean words across 3 documents before a register earns its own numbers, a two-part feature stability rule, and a heterogeneity stop that offers two profiles rather than averaging two registers into a voice belonging to nobody. Below 5,000 clean words nothing is written at all and the tool reports what the corpus needs.
280
+ Profiles live at `~/.agora/voices/`, outside the replaceable skill directory. A default profile can apply across modes. Use `--no-voice`, `neutral`, or `--voice <name>` per request. Scientific uncertainty, quote fidelity, legal language, and the supplied scope override habitual certainty or vocabulary.
225
281
 
226
- Once a default profile exists, it applies to every mode. Opt out per request with `--no-voice` or `neutral`, or name a different profile with `--voice <name>`.
282
+ Building or applying a third-party profile for publication under that person's name is refused.
227
283
 
228
- ## Change record
284
+ ## Silent safeguards
229
285
 
230
- | Version | What changed |
231
- |---|---|
232
- | 1.3.0 | `VOICE` becomes executable. A deterministic measurement engine ships as the `agora-voice` command: a frozen tokenizer, sentence segmenter, and lexicon; ingestion and cleaning for Markdown, plain text, and HTML from files, directories, and URLs, with binary formats refused by name; nine measured feature families with withheld rather than guessed values; all four corpus admission gates; profile and registry writing under `~/.agora/voices/`; and `voice check` with draft-length bands, register matching, and a phrase-overlap index stored as hashed token runs rather than as corpus text. A default profile now applies to every mode, with `--no-voice` and `neutral` as the opt-outs. Two blind eval cases added for build-from-corpus and the owned-vocabulary-against-tell-gate conflict. Two new references. `references/agora-craft.md` covers headlines and titles per publishing surface, awareness and sophistication staging with its routing table, emotion written from a fact set that carries no outcome data, and prose rhythm. `references/agora-voice.md` adds the `VOICE` modifier: measured author profiles stored outside the skill directory, a refusal floor below 5,000 clean author-controlled words, level-6 placement in the conflict hierarchy, the owned-vocabulary exception to the AI-vocabulary ban, and a refusal for third-party profiling intended for publication under that person's name. The Evidence register gains `Myths this document must never assert`, naming twenty-one high-traffic myths with what may be said instead. Four new applied pairs and six reworked, covering category orientation, superlative against specific, a label that overstates its click, and heading variety across one page. Blind eval corpus grows from 21 cases to 26. Two internal contradictions removed: the two-or-three-sentence passage unit that the same document had already refuted, and an unlabelled numeric threshold in the deterministic invariants. The validator now enumerates files through git's own ignore rules rather than walking the working directory, so scratch that exists only in a working copy no longer decides whether the repository is valid. |
233
- | 1.2.2 | Hard ban on the U+2014 character across the entire response, enforced as an immutable output constraint rather than a final-copy cleanup. |
234
- | 1.2.1 | First-read comprehension gate, specialized-term gate, and CTA standard. Comprehension moved above compression, citability, and differentiation in the conflict hierarchy. |
235
- | 1.2.0 | Blind evaluation corpus with a generation contract, pairwise adjudication, and absolute vetoes. |
286
+ Agora builds the argument before running publication and style checks. Those checks stay out of the delivered copy unless a constraint requires disclosure.
287
+
288
+ - Truth, safety, law, supplied facts, material qualifications, and immediate comprehension outrank persuasion and style.
289
+ - Unsupported claims are narrowed or removed, not buried under disclaimers.
290
+ - Facts, observations, interpretations, forecasts, targets, aspirations, and promises remain distinct.
291
+ - Emotion comes from a real situation, supportable consequence, and available agency.
292
+ - Fear, urgency, scarcity, loss, testimonials, intimacy, and certainty cannot be manufactured.
293
+ - CTAs use a clear action and a concrete destination, object, or result.
294
+ - One supported recommendation comes first. Near-duplicate variants appear only when requested.
295
+ - A hard final scan rejects U+2014 and smart-quote characters across the response.
296
+
297
+ Agora improves writing discipline. It does not replace source review, subject-matter review, legal review, or final human judgment.
298
+
299
+ ## Written GEO/AEO boundaries
300
+
301
+ For written assets, Agora answers the reader's question early when the format calls for it, names entities and scope, keeps supporting details and qualifications beside claims, exposes real provenance, and builds useful passages that remain accurate when quoted alone.
302
+
303
+ For indexable public pages, it can flag relevant crawlability, canonical, sitemap, metadata, structured-data, accessibility, and delivery checks. These practices may improve eligibility and citability. They cannot promise retrieval, selection, quotation, citation, ranking, recommendation, referral, conversion, or revenue.
304
+
305
+ GEO/AEO applies to coherent page passages, not every sentence. It cannot force article-style density into a hero, case-study opening, spoken script, or short CTA.
306
+
307
+ ## Package architecture
308
+
309
+ <p align="center">
310
+ <img src="assets/agora-orbit.svg" alt="Animated flow from source material through argument, voice, and action into ready copy" width="100%" />
311
+ </p>
312
+
313
+ The shipped skill stays progressively loaded:
314
+
315
+ ```text
316
+ skills/agora/
317
+ |-- SKILL.md
318
+ |-- agents/
319
+ | `-- openai.yaml
320
+ `-- references/
321
+ |-- agora-case-studies.md
322
+ |-- agora-craft.md
323
+ |-- agora-invest.md
324
+ |-- agora-marketing.md
325
+ |-- agora-science.md
326
+ `-- agora-voice.md
327
+ ```
328
+
329
+ `SKILL.md` contains routing and the concise operating contract. Ordinary work loads only the reference sections it needs.
330
+
331
+ - `agora-marketing.md` is the canonical doctrine for argument, truth, channels, GEO/AEO, AI-writing-tell controls, examples, research grades, and conflict handling.
332
+ - `agora-craft.md` adds headlines, heroes, awareness and sophistication, emotion, and prose rhythm.
333
+ - `agora-science.md` adds empirical and technical claim accuracy.
334
+ - `agora-case-studies.md` adds case structure, results, attribution, permissions, and confidentiality.
335
+ - `agora-invest.md` adds fundraising, diligence, and allocation procedures.
336
+ - `agora-voice.md` adds measured first-party voice profiles.
337
+
338
+ ## Public-package hygiene
339
+
340
+ Research informed Agora, but research custody is separate from distribution.
341
+
342
+ The public repository and npm package must not contain raw or corrected transcripts, caption files, supplied PDFs or office documents, audio, video, private source identities, model-output scratch, research working files, local paths, or assigned secrets.
236
343
 
237
- Every rule added in 1.3.0 carries an evidence grade and a stated failure condition. Every numeric threshold in the references is either followed by a source link or labelled a governance default in the same sentence. Two conflicts the research left open are recorded rather than resolved.
344
+ `npm run check` always runs a release-hygiene scan after validation, deterministic tests, and the exact package allowlist. `npm pack` and `npm publish` run the same complete release gate through `prepack` and `prepublishOnly`.
238
345
 
239
- ## Verify the package
346
+ The blind corpus contains 86 prompt and manifest pairs: 28 incumbent cases, 32 hero, science, case-study, and composition cases introduced for v1.4.0, 20 INVEST and cross-capability cases introduced for v1.5.0, three fiction-boundary cases, and three customer-language cases that test whether internal checking terms stay backstage unless a technical audience needs them. Generation contexts receive prompts only, never expected behavior or grading metadata.
347
+
348
+ ## Verify
240
349
 
241
350
  ```sh
242
351
  npm run check
352
+ npm run release:check
353
+ npm pack --dry-run --json
243
354
  npx -y @maestroagora/agora --dry-run
244
355
  ```
245
356
 
246
- The validation suite checks the strict three-file skill root, current behavior and release contracts, plugin metadata, relative links, installer behavior, source-link retention, project-agnostic content, line-ending parity, and the exact npm package allowlist. A committed blind-eval corpus covers known failure modes without passing expected answers or grading rules into generation.
357
+ The release gate checks skill structure, routing contracts, modifiers, claim boundaries, typography, metadata, reference links, full-tree installer parity, exact npm contents, blind-corpus integrity, and public-tree hygiene.
358
+
359
+ ## Change record
360
+
361
+ | Version | What changed |
362
+ |---|---|
363
+ | 1.5.0 | Hardens `INVEST` across fundraising, diligence, and capital allocation. Adds an investment claim ledger, metric separations, asset-specific procedures, decision-led questions, objection handling, defensibility analysis, truthful urgency and commitment language, modifier composition, and current-verification boundaries. Separates real projects from fictional mock and concept-portfolio routes, and permits clearly disclosed invention for mock and hypothetical articles. Adds a customer-language boundary that keeps internal checking terms out of ordinary public copy while preserving them where scientific, methodological, audit, legal, compliance, diligence, or technical work needs them. Expands the blind corpus from 60 to 86 cases. Adds a mandatory public-tree and package hygiene gate that blocks research, transcripts, supplied private documents, raw model outputs, local paths, secrets, unexpected binaries, and private source identities. |
364
+ | 1.4.0 | Adds stronger hero and short-form sales composition plus the composable `SCIENCE` and `CASE_STUDY` capabilities. Heroes now separate truth gates from persuasive optimization and treat the complete first-screen composition as one argument. Scientific and technical work preserves claim class, causality, statistics, uncertainty, analogy limits, and source limits. Case studies add result classes, causality, permissions, confidentiality, role attribution, quote, typicality, and visual-support gates. The blind corpus contains 60 cases. |
365
+ | 1.3.0 | Adds executable `VOICE` profiles, a deterministic measurement engine, admission gates, local profile storage, register-aware checking, and the craft reference. The archived incumbent corpus contains 28 cases. |
366
+ | 1.2.2 | Adds a hard U+2014 ban across the complete response. |
367
+ | 1.2.1 | Adds the first-read comprehension gate, specialized-term gate, and CTA standard. |
368
+ | 1.2.0 | Adds the blind evaluation corpus, generation isolation, pairwise adjudication, and absolute vetoes. |
369
+
370
+ Every research-derived rule records its source grade and boundary or failure condition. Numeric thresholds are sourced or labeled as governance defaults. Practitioner procedures remain bounded craft guidance, not scientific or commercial performance laws.
371
+
372
+ ## Maestro suite
373
+
374
+ - **[Maestro Frontier](https://github.com/mbanderas/maestro):** Fuses the model CLIs you already run into one judged, grounded answer.
375
+ - **[Maestro Agora](https://github.com/mbanderas/maestro-agora):** Writes persuasive copy, technical explanations, compelling case studies, and investment communication without inventing results.
376
+ - **[Maestro CostGuard](https://github.com/mbanderas/costguard):** Audits CI and cloud infrastructure for cost leaks and shows what to fix.
247
377
 
248
378
  ## License
249
379