-
Notifications
You must be signed in to change notification settings - Fork 29
Expand file tree
/
Copy pathindex.html
More file actions
424 lines (396 loc) · 16.7 KB
/
index.html
File metadata and controls
424 lines (396 loc) · 16.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>CortexPilot | Ecosystem map for Codex, Claude Code, and MCP</title>
<meta
name="description"
content="CortexPilot ecosystem map: primary bindings for Codex and Claude Code workflows, read-only MCP, and the adjacent comparison layer for OpenHands, OpenCode, and OpenClaw."
/>
<link rel="canonical" href="https://xiaojiou176-open.github.io/CortexPilot-public/ecosystem/" />
<meta property="og:title" content="CortexPilot | Ecosystem map for Codex, Claude Code, and MCP" />
<meta
property="og:description"
content="Truthful ecosystem map for Codex workflows, Claude Code workflows, read-only MCP, and the secondary comparison layer around OpenHands, OpenCode, and OpenClaw."
/>
<meta property="og:url" content="https://xiaojiou176-open.github.io/CortexPilot-public/ecosystem/" />
<meta property="og:type" content="website" />
<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="CortexPilot | Ecosystem map for Codex, Claude Code, and MCP" />
<meta
name="twitter:description"
content="Truthful ecosystem map for Codex, Claude Code, read-only MCP, and the adjacent comparison layer without fake hosted or partnership claims."
/>
<style>
:root {
color-scheme: light;
--bg: #f4efe3;
--panel: #fffdf8;
--ink: #17232c;
--muted: #52616d;
--line: rgba(23, 35, 44, 0.12);
--accent: #0f766e;
--accent-soft: rgba(15, 118, 110, 0.1);
--warm: #a16207;
--warm-soft: rgba(161, 98, 7, 0.12);
--hero: linear-gradient(135deg, #fff8e8 0%, #fffdf8 42%, #ecfeff 100%);
--shadow: 0 24px 80px rgba(23, 35, 44, 0.12);
}
* { box-sizing: border-box; }
body {
margin: 0;
background: radial-gradient(circle at top, rgba(15, 118, 110, 0.08), transparent 40%), var(--bg);
color: var(--ink);
font: 16px/1.65 "Inter", "Segoe UI", system-ui, sans-serif;
}
main {
max-width: 1120px;
margin: 0 auto;
padding: 40px 20px 72px;
}
a { color: var(--accent); }
a:hover { color: #0b5e58; }
.hero,
.section,
.table-shell {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 28px;
box-shadow: var(--shadow);
}
.hero {
padding: 36px;
background: var(--hero);
display: grid;
gap: 24px;
}
.eyebrow {
display: inline-flex;
width: fit-content;
padding: 8px 12px;
border-radius: 999px;
background: rgba(23, 35, 44, 0.08);
color: var(--muted);
font-size: 13px;
letter-spacing: 0.03em;
text-transform: uppercase;
}
h1, h2, h3 { margin: 0; line-height: 1.15; }
h1 { font-size: clamp(2.5rem, 5vw, 4rem); max-width: 13ch; }
h2 { font-size: 1.65rem; margin-bottom: 14px; }
p, li { color: var(--muted); }
.lede { font-size: 1.1rem; max-width: 72ch; }
.actions, .mini-actions {
display: flex;
flex-wrap: wrap;
gap: 12px;
}
.button {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 12px 16px;
border-radius: 999px;
text-decoration: none;
font-weight: 600;
border: 1px solid transparent;
}
.button.primary {
background: var(--accent);
color: white;
}
.button.secondary {
background: white;
color: var(--ink);
border-color: var(--line);
}
.pill-row {
display: flex;
flex-wrap: wrap;
gap: 10px;
}
.pill {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 14px;
border-radius: 999px;
background: rgba(255,255,255,0.72);
border: 1px solid rgba(23, 35, 44, 0.08);
color: var(--ink);
font-weight: 600;
}
.section {
margin-top: 28px;
padding: 28px;
}
.grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
gap: 16px;
}
.card {
padding: 18px;
border-radius: 22px;
border: 1px solid var(--line);
background: white;
}
.badge {
display: inline-flex;
width: fit-content;
margin-bottom: 10px;
padding: 6px 10px;
border-radius: 999px;
font-size: 12px;
font-weight: 700;
}
.badge.primary { background: var(--accent-soft); color: var(--accent); }
.badge.adjacent { background: var(--warm-soft); color: var(--warm); }
.table-shell {
margin-top: 28px;
overflow: hidden;
}
table {
width: 100%;
border-collapse: collapse;
}
th, td {
padding: 16px 18px;
border-bottom: 1px solid var(--line);
text-align: left;
vertical-align: top;
}
th {
background: rgba(23, 35, 44, 0.04);
color: var(--ink);
font-size: 13px;
letter-spacing: 0.03em;
text-transform: uppercase;
}
tr:last-child td { border-bottom: none; }
.caption { font-size: 0.95rem; }
.guardrails {
padding-left: 18px;
}
@media (max-width: 720px) {
.hero, .section { padding: 22px; }
th, td { padding: 12px; }
}
</style>
</head>
<body>
<main>
<section class="hero">
<span class="eyebrow">Ecosystem front door</span>
<nav class="mini-actions" aria-label="Top of page navigation">
<a href="../">Back to the public landing page</a>
<a href="../compatibility/">Compatibility matrix</a>
<a href="../ai-surfaces/">AI + MCP + API surfaces</a>
<a href="../integrations/">Integration guide</a>
<a href="../builders/">Builder quickstart</a>
<a href="../use-cases/">Use cases</a>
</nav>
<h1>Ecosystem map for Codex, Claude Code, and MCP.</h1>
<p class="lede">
CortexPilot is a command tower for <strong>Codex</strong> and <strong>Claude Code</strong>
workflows with a real <strong>read-only MCP</strong> surface. This page exists to make that
binding easy to explain, while keeping adjacent tools in the right comparison layer instead of
inflating them into fake hero claims.
</p>
<p class="lede">
Need the sharper “how would my coding-agent team actually use it?” answer?
Pair this page with the <a href="../integrations/">integration guide</a> and the
<a href="../compatibility/">compatibility matrix</a>, then the
<a href="../skills/">skills quickstart</a>.
</p>
<div class="pill-row">
<span class="pill">Primary: Codex workflows</span>
<span class="pill">Primary: Claude Code workflows</span>
<span class="pill">Protocol: read-only MCP</span>
<span class="pill">Adjacent: OpenHands / OpenCode</span>
</div>
<div class="actions">
<a class="button primary" href="../ai-surfaces/">See the AI + MCP + API map</a>
<a class="button secondary" href="../compatibility/">Open compatibility matrix</a>
<a class="button secondary" href="../builders/">Open builder quickstart</a>
<a class="button secondary" href="../mcp/">Read-only MCP quickstart</a>
</div>
</section>
<section class="section">
<h2>Why these names stay in the front door</h2>
<p>
CortexPilot already ships real operator-facing surfaces for Codex-style and Claude Code-style
workflows: <strong>Command Tower</strong>, <strong>Workflow Cases</strong>, <strong>Proof & Replay</strong>,
explainable operator briefs, and structured read-only MCP inspection. That is why these names belong in the
public discovery layer.
</p>
<div class="grid">
<article class="card">
<span class="badge primary">Primary workflow binding</span>
<h3>Codex</h3>
<p>Use CortexPilot when a Codex-led workflow needs one governed command tower, one durable case record, and one replayable proof path.</p>
</article>
<article class="card">
<span class="badge primary">Primary workflow binding</span>
<h3>Claude Code</h3>
<p>The same operator surface works for Claude Code loops that need approvals, evidence, and a visible workflow trail instead of disconnected chat output.</p>
</article>
<article class="card">
<span class="badge primary">Protocol surface</span>
<h3>Read-only MCP</h3>
<p>MCP is already real here, but the truthful public contract stays read-only. External tools can inspect workflow truth without taking control they do not yet have.</p>
</article>
</div>
</section>
<section class="table-shell">
<table>
<caption style="padding:16px 18px;text-align:left;color:var(--muted);font-size:0.95rem;">
Ecosystem surfaces and how they fit into the CortexPilot product story.
</caption>
<thead>
<tr>
<th scope="col">Surface</th>
<th scope="col">Where it fits</th>
<th scope="col">Why it matters</th>
<th scope="col">Current truthful boundary</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Codex</strong></td>
<td>Hero and first-screen discovery</td>
<td>High-intent searchers should immediately see that CortexPilot is built for governed coding workflows, not generic AI demos.</td>
<td>Supported as a primary workflow audience.</td>
</tr>
<tr>
<td><strong>Claude Code</strong></td>
<td>Hero and first-screen discovery</td>
<td>Pairs with Codex so the front door speaks to the two primary workflow audiences without inventing partnerships.</td>
<td>Supported as a primary workflow audience.</td>
</tr>
<tr>
<td><strong>MCP</strong></td>
<td>Hero-adjacent protocol layer</td>
<td>Signals a real integration boundary for inspection, proofs, approvals, and workflow reads.</td>
<td>Read-only only; no write-capable MCP claims.</td>
</tr>
<tr>
<td><strong>OpenHands</strong></td>
<td>Adjacent ecosystem / comparison layer</td>
<td>Useful for “where does this fit in the broader agent stack?” discovery without turning it into a co-brand.</td>
<td>Comparison-only; not elevated into the main hero.</td>
</tr>
<tr>
<td><strong>OpenCode</strong></td>
<td>Adjacent ecosystem / comparison layer</td>
<td>Helps transition-minded searchers understand overlap without muddying the primary story.</td>
<td>Comparison-only; keep it out of the hero.</td>
</tr>
<tr>
<td><strong>OpenClaw</strong></td>
<td>Trend / landscape only</td>
<td>People may search around the same buzz cluster, but it points at a different product category.</td>
<td>Not part of the front door.</td>
</tr>
</tbody>
</table>
</section>
<section class="section">
<h2>Adjacent tools still matter, just not in the hero</h2>
<div class="grid">
<article class="card">
<span class="badge adjacent">Adjacent ecosystem</span>
<h3>OpenHands</h3>
<p>Keep it in the comparison layer when you want to explain how CortexPilot sits beside broader agent-stack orchestration and execution tooling.</p>
</article>
<article class="card">
<span class="badge adjacent">Adjacent ecosystem</span>
<h3>OpenCode</h3>
<p>Use it in migration or comparison copy, not as a primary product anchor. The public front door should stay focused on Codex, Claude Code, and MCP.</p>
</article>
<article class="card">
<span class="badge adjacent">Landscape only</span>
<h3>OpenClaw</h3>
<p>Keep it in trend/landscape copy only. It lives close enough to the keyword cloud to mention, but far enough from the core product story to keep out of the hero.</p>
</article>
</div>
</section>
<section class="section">
<h2>Where builder and API entrypoints fit</h2>
<p>
The ecosystem story does not stop at names. CortexPilot also ships thin builder entrypoints for API
client helpers, contract-facing types, and a shared UI substrate. Those belong in the onboarding ladder,
not in the hero.
</p>
<div class="actions">
<a class="button secondary" href="../compatibility/">Compatibility matrix</a>
<a class="button secondary" href="../api/">API and contract quickstart</a>
<a class="button secondary" href="../builders/">Builder quickstart</a>
</div>
</section>
<section class="section">
<h2>Official platform reality</h2>
<p>
The ecosystem names in this front door are real, but their platform
surfaces are not interchangeable. Keep workflow integrations,
protocol surfaces, plugin systems, and publishing workflows separate
instead of collapsing them into one vague “plugin” story.
</p>
<table>
<thead>
<tr>
<th scope="col">Surface</th>
<th scope="col">What is real today</th>
<th scope="col">What we should not overclaim</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Codex</strong></td>
<td>Codex has real workflow integration surfaces such as the Codex SDK, GitHub Action, and Slack integration.</td>
<td>Do not turn those native Codex surfaces into a claim that CortexPilot is already a published Codex directory listing.</td>
</tr>
<tr>
<td><strong>Claude Code</strong></td>
<td>Claude Code has official MCP, subagent, hook, and project-configuration surfaces for governed coding workflows.</td>
<td>Do not turn those workflow surfaces into a claim that CortexPilot is already an official Claude Code plugin or marketplace listing.</td>
</tr>
<tr>
<td><strong>MCP</strong></td>
<td>MCP is an open protocol, and there is now an official MCP Registry for servers.</td>
<td>Do not collapse “MCP Registry” into “universal plugin store” language; registry/server discovery is not the same thing as a client marketplace.</td>
</tr>
<tr>
<td><strong>OpenClaw</strong></td>
<td>OpenClaw has official plugins and skills surfaces, including a public skills registry, so plugin-ready wording is real in that ecosystem.</td>
<td>Do not turn that into a claim that CortexPilot itself already ships as an official OpenClaw plugin unless a real package and tested path are published.</td>
</tr>
</tbody>
</table>
<p class="caption">
CortexPilot can truthfully map itself to these surfaces, but it should
not pretend that repo-owned builder/docs assets are already a live
plugin marketplace, a Codex/Claude official plugin, or a hosted
platform product.
</p>
</section>
<section class="section">
<h2>Current guardrails</h2>
<ul class="guardrails">
<li>Do not present hosted operator as current product truth.</li>
<li>Do not present write-capable MCP as current product truth.</li>
<li>Do not describe the current repo-owned package layer as a public marketplace or published plugin catalog.</li>
<li>Do not elevate OpenHands, OpenCode, or OpenClaw into the main hero.</li>
<li>Do not present the package surface as a full SDK platform.</li>
</ul>
<p class="caption">
If you want the product-surface version of this map, continue to
<a href="../compatibility/">the compatibility matrix</a>,
<a href="../ai-surfaces/">AI + MCP + API surfaces</a> or the
<a href="../builders/">builder quickstart</a>.
</p>
</section>
</main>
</body>
</html>