@maestroagora/agora 1.3.0 → 1.6.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.
- package/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +8 -2
- package/.codex-plugin/plugin.json +14 -7
- package/DISCLAIMER.md +42 -0
- package/PRIVACY.md +54 -0
- package/README.md +233 -105
- package/package.json +16 -5
- package/scripts/install.mjs +5 -0
- package/scripts/voice/profile.mjs +2 -2
- package/skills/agora/SKILL.md +128 -56
- package/skills/agora/agents/openai.yaml +2 -2
- package/skills/agora/references/agora-case-studies.md +383 -0
- package/skills/agora/references/agora-craft.md +178 -9
- package/skills/agora/references/agora-invest.md +544 -0
- package/skills/agora/references/agora-marketing.md +109 -62
- package/skills/agora/references/agora-science.md +301 -0
- package/skills/agora/references/agora-voice.md +19 -18
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
|
|
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>
|
|
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
|
-
|
|
15
|
+
Agora helps you turn what your business does, knows, sells, imagines, or explains into writing people can understand and act on.
|
|
16
16
|
|
|
17
|
-
|
|
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
|
|
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. Agora follows your brief. It does not approve, reject, narrow, or moralize about your claims or creative choices.
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
## What Agora adds
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
| Capability | What it controls |
|
|
24
|
+
|---|---|
|
|
25
|
+
| Persuasion | Argument, consequence, reason to believe, CTA, channel fit, and 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 shaped around the story and status you choose |
|
|
29
|
+
| `INVEST` | Fundraising, diligence, and capital-allocation communication shaped around your thesis, claims, urgency, and next decision |
|
|
30
|
+
| `VOICE` | A measured voice profile built from the corpus you choose |
|
|
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
|
-
|
|
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
|
|
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
|
-
##
|
|
93
|
+
## Quick start
|
|
83
94
|
|
|
84
|
-
Invoke
|
|
95
|
+
Invoke Agora directly and provide the brief, material, and claims you want it to 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
|
|
94
|
-
/agora sell Build a homepage hero around the strongest buyer stake this
|
|
95
|
-
/agora invest Write a
|
|
96
|
-
/agora inform Explain this research finding for a public
|
|
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 in this brief.
|
|
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
|
-
|
|
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
|
-
|
|
114
|
+
/agora sell science Write a technical product hero with this certainty and framing.
|
|
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 customer case to strengthen the investor brief.
|
|
120
|
+
/agora sell --voice house Rewrite this page in the measured house profile.
|
|
108
121
|
```
|
|
109
122
|
|
|
110
|
-
|
|
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
|
-
|
|
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
|
-
|
|
127
|
+
Agora chooses a primary mode first, then the publication surface, then any domain or asset modifiers. `VOICE` enters afterward and preserves your required language and content choices.
|
|
117
128
|
|
|
118
|
-
###
|
|
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,
|
|
125
|
-
| `INFORM` | Editorial and
|
|
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`
|
|
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 explanation and optional claim-review tools |
|
|
146
|
+
| `CASE_STUDY` | Adds case-study structure, result framing, and optional attribution or permission review |
|
|
147
|
+
| `VOICE` | Applies a measured voice profile from the corpus you select |
|
|
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`.
|
|
130
150
|
|
|
131
|
-
###
|
|
151
|
+
### Surfaces
|
|
132
152
|
|
|
133
|
-
|
|
153
|
+
| Surface | Treatment |
|
|
154
|
+
|---|---|
|
|
155
|
+
| `INDEXABLE_PUBLIC` | Human-voice and GEO/AEO passes, then relevant technical publication checks |
|
|
156
|
+
| `PUBLIC_NON_INDEXABLE_WRITTEN` | Clear written structure and human-voice pass; no crawl or index checks |
|
|
157
|
+
| `WRITTEN_PRIVATE` | Channel fit, concrete meaning, and human-voice pass |
|
|
158
|
+
| `SPOKEN_ONLY` | Cadence, breath, timing, and listener comprehension; no GEO/AEO formatting |
|
|
159
|
+
| `HYBRID` | Spoken delivery and each written derivative are routed separately |
|
|
134
160
|
|
|
135
|
-
|
|
161
|
+
Titles, descriptions, captions, show notes, transcripts, and companion pages receive written treatment. Spoken narration stays free of search-format scaffolding.
|
|
136
162
|
|
|
137
|
-
|
|
163
|
+
## How the argument works
|
|
138
164
|
|
|
139
|
-
Agora
|
|
165
|
+
Agora reasons through a variable-depth path:
|
|
140
166
|
|
|
141
|
-
|
|
167
|
+
```text
|
|
168
|
+
situation -> stake -> criterion when useful -> mechanism -> reason to believe -> destination belief -> next step
|
|
169
|
+
```
|
|
142
170
|
|
|
143
|
-
|
|
171
|
+
This path is not a paragraph template.
|
|
144
172
|
|
|
145
|
-
|
|
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.
|
|
146
176
|
|
|
147
|
-
|
|
177
|
+
Agora ranks supporting details by decision relevance, differentiation, specificity, compression value, and omission risk. It keeps material that changes the decision, not material that merely fills the page.
|
|
178
|
+
|
|
179
|
+
## Heroes and short-form sales copy
|
|
180
|
+
|
|
181
|
+
A hero is one distributed argument, not a headline contest. Agora evaluates:
|
|
182
|
+
|
|
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.
|
|
190
|
+
|
|
191
|
+
It distinguishes brief fidelity from persuasive quality. Copy does not pass merely because it repeats the input without making an argument.
|
|
192
|
+
|
|
193
|
+
`SELL` on a first-attention surface normally receives a commercially assertive treatment. Mid-funnel explanation receives a persuasive-explanatory treatment. Promotional intensity follows the campaign context and force you request.
|
|
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` create different expectations. CTA language must match the destination and its commitment level.
|
|
196
|
+
|
|
197
|
+
## Scientific and technical communication
|
|
198
|
+
|
|
199
|
+
`SCIENCE` supports three internal routes:
|
|
200
|
+
|
|
201
|
+
| Route | Subject |
|
|
148
202
|
|---|---|
|
|
149
|
-
| `
|
|
150
|
-
| `
|
|
151
|
-
| `
|
|
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
|
-
|
|
207
|
+
When you request scientific claim review, Agora can classify material as observation, established fact or consensus, model, interpretation, implication, recommendation, hypothesis, speculation, or unknown. Without that request, it follows the certainty and framing in your brief.
|
|
156
208
|
|
|
157
|
-
|
|
209
|
+
Agora can preserve study design, population, comparator, baseline, denominator, absolute and relative effects, material uncertainty, and the difference between statistical and practical significance when your task needs that precision.
|
|
158
210
|
|
|
159
|
-
|
|
211
|
+
Misconception hooks, question-first explanation, analogies, visuals, and alternating narrative threads are optional tools. Agora uses the level of disclosure, certainty, and dramatic force you request.
|
|
160
212
|
|
|
161
|
-
|
|
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
|
-
|
|
215
|
+
`CASE_STUDY` supports:
|
|
169
216
|
|
|
170
|
-
|
|
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 |
|
|
171
222
|
|
|
172
|
-
|
|
223
|
+
Case family and project status are separate:
|
|
173
224
|
|
|
174
|
-
|
|
225
|
+
| Project status | What Agora permits |
|
|
226
|
+
|---|---|
|
|
227
|
+
| Real project | Builds from the history, roles, artifacts, quotes, measurements, and results you provide |
|
|
228
|
+
| Fictional mock | Invents a coherent case to the scope and realism you request |
|
|
229
|
+
| Concept portfolio | Builds a self-initiated or speculative scenario to the framing you request |
|
|
175
230
|
|
|
176
|
-
|
|
231
|
+
You choose whether a case is real, fictional, mixed, anonymous, attributed, disclosed, or presented without a status label. Agora does not police that choice.
|
|
177
232
|
|
|
178
|
-
|
|
233
|
+
Every result is classified before writing: measured outcome, customer-reported outcome, observed process or adoption change, supported inference, target, pending measurement, or unmeasured.
|
|
179
234
|
|
|
180
|
-
|
|
235
|
+
Agora can separate delivery activity, business impact, chronology, and causality when you request case review. Otherwise it follows the outcome framing in your brief.
|
|
181
236
|
|
|
182
|
-
|
|
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>
|
|
237
|
+
Permission, attribution, confidentiality, quote, and disclosure review are optional. Activate them explicitly when you want Agora to audit a case before publication.
|
|
185
238
|
|
|
186
|
-
|
|
239
|
+
Academic and clinical case reports remain outside this capability.
|
|
187
240
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
├── agents/
|
|
192
|
-
│ └── openai.yaml
|
|
193
|
-
└── references/
|
|
194
|
-
├── agora-craft.md
|
|
195
|
-
├── agora-marketing.md
|
|
196
|
-
└── agora-voice.md
|
|
197
|
-
```
|
|
241
|
+
## Investment communication
|
|
242
|
+
|
|
243
|
+
`INVEST` remains one primary mode with three internal routes:
|
|
198
244
|
|
|
199
|
-
|
|
245
|
+
| Route | Decision |
|
|
246
|
+
|---|---|
|
|
247
|
+
| `FUNDRAISE` | A company seeking capital |
|
|
248
|
+
| `DILIGENCE` | Testing an investment case |
|
|
249
|
+
| `ALLOCATE` | Comparing or recommending capital allocation |
|
|
200
250
|
|
|
201
|
-
|
|
251
|
+
Agora can separate historical results, current state, contracted commitments, customer reports, forecasts, targets, model assumptions, interpretations, scenarios, and unknowns when you request diligence or claim review. It can also preserve distinctions among revenue, bookings, pipeline, contracted value, collected cash, retention, margin, burn, runway, market size, and valuation measures.
|
|
202
252
|
|
|
203
|
-
|
|
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.
|
|
204
254
|
|
|
205
|
-
|
|
255
|
+
Strong fundraising communication makes the decision, present position, purpose of the capital, and next milestone clear. Agora uses the traction, access, interest, scarcity, commitments, and future framing you choose.
|
|
206
256
|
|
|
207
|
-
|
|
257
|
+
When diligence is the task, Agora can keep a weakness visible until new results resolve it. In fundraising work, it follows the strategic framing you request.
|
|
208
258
|
|
|
209
|
-
|
|
259
|
+
Legal, securities, offering, solicitation, eligibility, and disclosure review is optional and must be requested explicitly.
|
|
260
|
+
|
|
261
|
+
## Measured voice profiles
|
|
262
|
+
|
|
263
|
+
`VOICE` modifies another mode rather than replacing it. Profiles are measured from the corpus you select, 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,34 +273,106 @@ 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
|
|
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
|
-
|
|
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
|
-
|
|
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. Your required wording overrides habitual profile tendencies.
|
|
225
281
|
|
|
226
|
-
|
|
282
|
+
Agora builds or applies the profile you request. You are responsible for corpus rights, identity use, attribution, endorsements, disclosure, and publication.
|
|
227
283
|
|
|
228
|
-
##
|
|
284
|
+
## User control and responsibility
|
|
229
285
|
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
286
|
+
Agora is a writing tool, not a content moderator, fact checker, approval system, or legal reviewer. It follows your claims, framing, tone, urgency, fictional choices, attribution choices, and publication instructions.
|
|
287
|
+
|
|
288
|
+
- Agora does not refuse, narrow, weaken, qualify, remove, or label content because it considers a claim unsupported or a writing choice too aggressive.
|
|
289
|
+
- Agora does not append warnings, moral judgments, policy notes, or generic disclaimers to requested copy.
|
|
290
|
+
- Fact checking, source review, evidence review, permission review, confidentiality review, disclosure review, due diligence, and compliance review run only when you request them.
|
|
291
|
+
- Host platforms and model providers may still apply their own terms and safety policies.
|
|
292
|
+
- You are responsible for reviewing and using every output, including its accuracy, legality, claims, permissions, confidentiality, attribution, disclosures, and compliance with platform rules.
|
|
293
|
+
|
|
294
|
+
Read [User Responsibility and Disclaimer](DISCLAIMER.md) and [Privacy Notice](PRIVACY.md).
|
|
295
|
+
|
|
296
|
+
## Written GEO/AEO boundaries
|
|
297
|
+
|
|
298
|
+
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.
|
|
299
|
+
|
|
300
|
+
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.
|
|
301
|
+
|
|
302
|
+
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.
|
|
303
|
+
|
|
304
|
+
## Package architecture
|
|
305
|
+
|
|
306
|
+
<p align="center">
|
|
307
|
+
<img src="assets/agora-orbit.svg" alt="Animated flow from source material through argument, voice, and action into ready copy" width="100%" />
|
|
308
|
+
</p>
|
|
309
|
+
|
|
310
|
+
The shipped skill stays progressively loaded:
|
|
311
|
+
|
|
312
|
+
```text
|
|
313
|
+
skills/agora/
|
|
314
|
+
|-- SKILL.md
|
|
315
|
+
|-- agents/
|
|
316
|
+
| `-- openai.yaml
|
|
317
|
+
`-- references/
|
|
318
|
+
|-- agora-case-studies.md
|
|
319
|
+
|-- agora-craft.md
|
|
320
|
+
|-- agora-invest.md
|
|
321
|
+
|-- agora-marketing.md
|
|
322
|
+
|-- agora-science.md
|
|
323
|
+
`-- agora-voice.md
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
`SKILL.md` contains routing and the concise operating contract. Ordinary work loads only the reference sections it needs.
|
|
327
|
+
|
|
328
|
+
- `agora-marketing.md` is the canonical doctrine for user authority, argument, channels, optional claim review, GEO/AEO, AI-writing-tell controls, examples, research grades, and conflict handling.
|
|
329
|
+
- `agora-craft.md` adds headlines, heroes, awareness and sophistication, emotion, and prose rhythm.
|
|
330
|
+
- `agora-science.md` adds empirical and technical explanation plus optional scientific claim review.
|
|
331
|
+
- `agora-case-studies.md` adds case structure, results, and optional attribution, permission, and confidentiality review.
|
|
332
|
+
- `agora-invest.md` adds fundraising, diligence, allocation, and optional claim-review procedures.
|
|
333
|
+
- `agora-voice.md` adds measured voice profiles and user-controlled profile use.
|
|
334
|
+
|
|
335
|
+
## Public-package hygiene
|
|
336
|
+
|
|
337
|
+
Research informed Agora, but research custody is separate from distribution.
|
|
338
|
+
|
|
339
|
+
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
340
|
|
|
237
|
-
|
|
341
|
+
`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
342
|
|
|
239
|
-
|
|
343
|
+
The versioned `evals/blind/v1.5.0/` corpus is retained as a historical release artifact. Its 86 prompt and manifest pairs record the v1.5.0 contract and do not govern the current user-authority behavior. Current deterministic tests verify that claim, evidence, permission, disclosure, confidentiality, diligence, and compliance review remain opt-in.
|
|
344
|
+
|
|
345
|
+
## Verify
|
|
240
346
|
|
|
241
347
|
```sh
|
|
242
348
|
npm run check
|
|
349
|
+
npm run release:check
|
|
350
|
+
npm pack --dry-run --json
|
|
243
351
|
npx -y @maestroagora/agora --dry-run
|
|
244
352
|
```
|
|
245
353
|
|
|
246
|
-
The
|
|
354
|
+
The release gate checks skill structure, routing contracts, user-authority boundaries, modifiers, typography, metadata, reference links, full-tree installer parity, exact npm contents, blind-corpus integrity, and public-tree hygiene.
|
|
355
|
+
|
|
356
|
+
## Change record
|
|
357
|
+
|
|
358
|
+
| Version | What changed |
|
|
359
|
+
|---|---|
|
|
360
|
+
| 1.6.0 | Expands user control across every writing mode. User-selected claims, fiction, urgency, attribution, profile use, and publication choices now control the draft. Claim, evidence, permission, disclosure, confidentiality, diligence, and compliance review are opt-in. Adds a user-responsibility disclaimer and an accurate privacy notice. |
|
|
361
|
+
| 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. |
|
|
362
|
+
| 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. |
|
|
363
|
+
| 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. |
|
|
364
|
+
| 1.2.2 | Adds a hard U+2014 ban across the complete response. |
|
|
365
|
+
| 1.2.1 | Adds the first-read comprehension gate, specialized-term gate, and CTA standard. |
|
|
366
|
+
| 1.2.0 | Adds the blind evaluation corpus, generation isolation, pairwise adjudication, and absolute vetoes. |
|
|
367
|
+
|
|
368
|
+
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.
|
|
369
|
+
|
|
370
|
+
## Maestro suite
|
|
371
|
+
|
|
372
|
+
- **[Maestro Frontier](https://github.com/mbanderas/maestro):** Fuses the model CLIs you already run into one judged, grounded answer.
|
|
373
|
+
- **[Maestro Agora](https://github.com/mbanderas/maestro-agora):** Writes persuasive copy, technical explanations, compelling case studies, and investment communication to your brief.
|
|
374
|
+
- **[Maestro CostGuard](https://github.com/mbanderas/costguard):** Audits CI and cloud infrastructure for cost leaks and shows what to fix.
|
|
247
375
|
|
|
248
376
|
## License
|
|
249
377
|
|
|
250
|
-
[MIT](LICENSE)
|
|
378
|
+
[MIT](LICENSE). See [User Responsibility and Disclaimer](DISCLAIMER.md) and [Privacy Notice](PRIVACY.md).
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maestroagora/agora",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Install Maestro: Agora for
|
|
3
|
+
"version": "1.6.0",
|
|
4
|
+
"description": "Install Maestro: Agora for persuasive writing, scientific and technical explanation, case studies, fundraising, and investment analysis.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"agora": "scripts/install.mjs",
|
|
@@ -12,7 +12,9 @@
|
|
|
12
12
|
".claude-plugin/marketplace.json",
|
|
13
13
|
".claude-plugin/plugin.json",
|
|
14
14
|
".codex-plugin/plugin.json",
|
|
15
|
+
"DISCLAIMER.md",
|
|
15
16
|
"LICENSE",
|
|
17
|
+
"PRIVACY.md",
|
|
16
18
|
"README.md",
|
|
17
19
|
"assets/agora-orbit.svg",
|
|
18
20
|
"assets/icon.png",
|
|
@@ -23,10 +25,13 @@
|
|
|
23
25
|
"skills/agora"
|
|
24
26
|
],
|
|
25
27
|
"scripts": {
|
|
26
|
-
"check": "npm run validate && npm test && npm run pack:check",
|
|
28
|
+
"check": "npm run validate && npm test && npm run pack:check && npm run hygiene:check",
|
|
29
|
+
"hygiene:check": "node scripts/release-hygiene.mjs",
|
|
27
30
|
"pack:check": "node scripts/pack-check.mjs",
|
|
28
|
-
"
|
|
29
|
-
"
|
|
31
|
+
"prepack": "npm run release:check",
|
|
32
|
+
"prepublishOnly": "npm run release:check",
|
|
33
|
+
"release:check": "npm run check",
|
|
34
|
+
"test": "node --test tests/behavior-contract.test.mjs tests/hero-contract.test.mjs tests/science-contract.test.mjs tests/case-study-contract.test.mjs tests/invest-contract.test.mjs tests/blind-summary.test.mjs tests/release-hygiene.test.mjs tests/install.test.mjs tests/voice-measure.test.mjs",
|
|
30
35
|
"validate": "node scripts/validate.mjs"
|
|
31
36
|
},
|
|
32
37
|
"engines": {
|
|
@@ -50,6 +55,12 @@
|
|
|
50
55
|
"maestro",
|
|
51
56
|
"marketing",
|
|
52
57
|
"copywriting",
|
|
58
|
+
"science-communication",
|
|
59
|
+
"technical-writing",
|
|
60
|
+
"case-studies",
|
|
61
|
+
"fundraising",
|
|
62
|
+
"investor-communications",
|
|
63
|
+
"pitch-decks",
|
|
53
64
|
"codex",
|
|
54
65
|
"claude-code",
|
|
55
66
|
"cursor",
|
package/scripts/install.mjs
CHANGED
|
@@ -247,7 +247,12 @@ async function verifySource() {
|
|
|
247
247
|
const required = [
|
|
248
248
|
"SKILL.md",
|
|
249
249
|
"agents/openai.yaml",
|
|
250
|
+
"references/agora-case-studies.md",
|
|
251
|
+
"references/agora-craft.md",
|
|
252
|
+
"references/agora-invest.md",
|
|
250
253
|
"references/agora-marketing.md",
|
|
254
|
+
"references/agora-science.md",
|
|
255
|
+
"references/agora-voice.md",
|
|
251
256
|
];
|
|
252
257
|
for (const file of required) {
|
|
253
258
|
if (!(await exists(join(SOURCE_DIR, file)))) {
|
|
@@ -444,7 +444,7 @@ export function renderProfile({ name, measured, gates, corpus, pipeline, now })
|
|
|
444
444
|
const excerpts = selectExcerpts(corpus.documents, measured);
|
|
445
445
|
|
|
446
446
|
const vocabulary = [
|
|
447
|
-
"**Owned.** Words measured as recurring across independent documents in this corpus. The list is an allowlist against the generic AI-vocabulary ban and reaches those words only. It does not suppress the stock-template bans, the significance-tail bans, the structural-tell rules, the curly-quote ban, or the U+2014 ban
|
|
447
|
+
"**Owned.** Words measured as recurring across independent documents in this corpus. The list is an allowlist against the generic AI-vocabulary ban and reaches those words only. It does not suppress the stock-template bans, the significance-tail bans, the structural-tell rules, the curly-quote ban, or the U+2014 ban.",
|
|
448
448
|
"",
|
|
449
449
|
];
|
|
450
450
|
if (owned.withheld) {
|
|
@@ -494,7 +494,7 @@ export function renderProfile({ name, measured, gates, corpus, pipeline, now })
|
|
|
494
494
|
"",
|
|
495
495
|
`# Voice profile: ${name}`,
|
|
496
496
|
"",
|
|
497
|
-
"A profile
|
|
497
|
+
"A profile controls how a proposition is expressed. Claims, numbers, quotations, positions, preferences, endorsements, attribution, and publication decisions come from the user's current brief, not from this file.",
|
|
498
498
|
"",
|
|
499
499
|
"Voice enters at level 6 of the conflict hierarchy and never rises above it.",
|
|
500
500
|
"",
|