pixelcrew 0.2.3 → 0.2.6
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/README.md +389 -315
- package/bin/pixel-agents.js +306 -149
- package/package.json +3 -1
- package/skill/SKILL.md +185 -0
- package/skill/references/anti-ai-rubric.md +30 -0
- package/skill/references/anti-ai-slop-encyclopedia.md +181 -0
- package/skill/references/commands-reference.md +135 -0
- package/skill/references/testing-and-qa-strategy.md +25 -0
- package/skill/references/token-efficiency.md +20 -0
- package/src/adapters/adapter.interface.js +77 -0
- package/src/adapters/antigravity.js +138 -0
- package/src/adapters/claude-code.js +149 -0
- package/src/adapters/codex.js +131 -0
- package/src/adapters/cursor.js +133 -0
- package/src/adapters/generic.js +63 -0
- package/src/adapters/index.js +15 -0
- package/src/adapters/kiro.js +134 -0
- package/src/adapters/registry.js +150 -0
- package/src/backend/analyzer/complexity-analyzer.js +104 -0
- package/src/backend/analyzer/requirement-analyzer.js +213 -0
- package/src/backend/analyzer/threat-analyzer.js +122 -0
- package/src/backend/api/api-designer.js +90 -0
- package/src/backend/api/error-contract.js +132 -0
- package/src/backend/api/route-generator.js +92 -0
- package/src/backend/api/schema-generator.js +64 -0
- package/src/backend/architecture/adr-generator.js +62 -0
- package/src/backend/architecture/architecture-reasoner.js +119 -0
- package/src/backend/architecture/architecture-selector.js +57 -0
- package/src/backend/architecture/tradeoff-analyzer.js +92 -0
- package/src/backend/data/data-modeler.js +114 -0
- package/src/backend/data/index-analyzer.js +93 -0
- package/src/backend/data/query-analyzer.js +41 -0
- package/src/backend/data/schema-generator.js +92 -0
- package/src/backend/data/transaction-analyzer.js +49 -0
- package/src/backend/index.js +67 -0
- package/src/backend/observability/logging-engine.js +80 -0
- package/src/backend/observability/metrics-engine.js +31 -0
- package/src/backend/observability/tracing-engine.js +16 -0
- package/src/backend/patterns/pattern-registry.js +74 -0
- package/src/backend/patterns/pattern-selector.js +39 -0
- package/src/backend/patterns/tradeoff-engine.js +17 -0
- package/src/backend/performance/cache-analyzer.js +31 -0
- package/src/backend/performance/concurrency-analyzer.js +34 -0
- package/src/backend/performance/performance-engine.js +98 -0
- package/src/backend/performance/query-optimizer.js +16 -0
- package/src/backend/reliability/failure-analyzer.js +22 -0
- package/src/backend/reliability/idempotency-engine.js +56 -0
- package/src/backend/reliability/resilience-engine.js +141 -0
- package/src/backend/reliability/retry-analyzer.js +15 -0
- package/src/backend/security/auth-selector.js +33 -0
- package/src/backend/security/authorization-engine.js +90 -0
- package/src/backend/security/policy-engine.js +49 -0
- package/src/backend/security/secret-analyzer.js +39 -0
- package/src/backend/security/security-engine.js +122 -0
- package/src/backend/security/threat-model.js +59 -0
- package/src/backend/synthesis/backend-synthesizer.js +98 -0
- package/src/backend/synthesis/infrastructure-synthesizer.js +108 -0
- package/src/backend/synthesis/module-synthesizer.js +262 -0
- package/src/backend/validation/architecture-validator.js +70 -0
- package/src/backend/validation/backend-quality-validator.js +71 -0
- package/src/backend/validation/dependency-validator.js +20 -0
- package/src/backend/validation/performance-validator.js +38 -0
- package/src/backend/validation/security-validator.js +73 -0
- package/src/commands/adapt.js +105 -0
- package/src/commands/add.js +78 -0
- package/src/commands/animate.js +48 -0
- package/src/commands/assemble.js +57 -0
- package/src/commands/audit.js +93 -0
- package/src/commands/backend.js +125 -0
- package/src/commands/bento.js +25 -0
- package/src/commands/blueprint.js +65 -0
- package/src/commands/bolder.js +48 -0
- package/src/commands/boss-fight.js +60 -0
- package/src/commands/build.js +39 -0
- package/src/commands/calibrate.js +25 -0
- package/src/commands/chromatic.js +25 -0
- package/src/commands/clarify.js +52 -0
- package/src/commands/colorize.js +57 -0
- package/src/commands/command.interface.js +28 -0
- package/src/commands/commands.js +84 -0
- package/src/commands/craft.js +57 -0
- package/src/commands/crew.js +66 -0
- package/src/commands/critique.js +25 -0
- package/src/commands/de-slop.js +25 -0
- package/src/commands/delight.js +46 -0
- package/src/commands/deploy.js +42 -0
- package/src/commands/distill.js +48 -0
- package/src/commands/doctor.js +89 -0
- package/src/commands/document.js +83 -0
- package/src/commands/eight-bit.js +25 -0
- package/src/commands/extract.js +75 -0
- package/src/commands/fix.js +46 -0
- package/src/commands/harden.js +85 -0
- package/src/commands/index.js +67 -0
- package/src/commands/install.js +75 -0
- package/src/commands/layout.js +48 -0
- package/src/commands/live.js +44 -0
- package/src/commands/manifest.js +25 -0
- package/src/commands/office.js +25 -0
- package/src/commands/onboard.js +46 -0
- package/src/commands/oneshot.js +60 -0
- package/src/commands/optimize.js +46 -0
- package/src/commands/overdrive.js +46 -0
- package/src/commands/parser.js +143 -0
- package/src/commands/pixelcrew.js +96 -0
- package/src/commands/plan.js +66 -0
- package/src/commands/polish.js +45 -0
- package/src/commands/quieter.js +48 -0
- package/src/commands/recap.js +358 -0
- package/src/commands/registry.js +353 -0
- package/src/commands/render.js +26 -0
- package/src/commands/retrofit.js +25 -0
- package/src/commands/review.js +118 -0
- package/src/commands/roster.js +25 -0
- package/src/commands/sentinel.js +25 -0
- package/src/commands/shape.js +66 -0
- package/src/commands/skills.js +57 -0
- package/src/commands/status.js +48 -0
- package/src/commands/stop.js +50 -0
- package/src/commands/sync.js +58 -0
- package/src/commands/typeset.js +58 -0
- package/src/commands/warp.js +25 -0
- package/src/core/agent-runtime.js +94 -0
- package/src/core/event-bus.js +98 -0
- package/src/core/index.js +9 -0
- package/src/core/orchestrator.js +234 -0
- package/src/core/scheduler.js +124 -0
- package/src/core/task-graph.js +185 -0
- package/src/dashboard/app.js +1172 -30
- package/src/dashboard/index.html +223 -23
- package/src/dashboard/styles.css +870 -0
- package/src/index.js +16 -0
- package/src/orchestrator/artifact-graph.js +104 -0
- package/src/orchestrator/ast-normalizer.js +147 -0
- package/src/orchestrator/code-generator.js +632 -780
- package/src/orchestrator/design-engine.js +203 -0
- package/src/orchestrator/engine.js +307 -38
- package/src/orchestrator/oneshot.js +367 -380
- package/src/orchestrator/ontology.js +394 -0
- package/src/orchestrator/planner.js +231 -258
- package/src/orchestrator/repair-planner.js +67 -0
- package/src/orchestrator/requirement-contract.js +177 -0
- package/src/orchestrator/requirement-validator.js +39 -0
- package/src/orchestrator/semantic-engine.js +582 -0
- package/src/orchestrator/semantic-reviewer.js +179 -0
- package/src/orchestrator/task-planner.js +111 -0
- package/src/orchestrator/telemetry.js +209 -0
- package/src/orchestrator/ui-synthesizer.js +245 -0
- package/src/orchestrator/visual-critic.js +106 -0
- package/src/policies/architecture/layering.policy.js +14 -0
- package/src/policies/performance/indexing.policy.js +13 -0
- package/src/policies/reliability/resilience.policy.js +13 -0
- package/src/policies/security/auth.policy.js +31 -0
- package/src/protocol/agent.js +124 -0
- package/src/protocol/event.js +78 -0
- package/src/protocol/index.js +8 -0
- package/src/protocol/skill.js +54 -0
- package/src/protocol/task.js +100 -0
- package/src/scaffold/claude-generator.js +60 -0
- package/src/scaffold/commands-catalog.js +321 -0
- package/src/scaffold/cursor-generator.js +74 -0
- package/src/scaffold/ide-rules.js +133 -0
- package/src/scaffold/init.js +415 -91
- package/src/scaffold/installer.js +571 -0
- package/src/scaffold/kiro-generator.js +86 -0
- package/src/scaffold/skills-bundle.js +520 -0
- package/src/scaffold/templates.js +57 -4
- package/src/scaffold/workstations.js +364 -0
- package/src/server/server.js +283 -40
- package/src/utils/fs-safe.js +168 -0
- package/src/utils/markdown-report.js +175 -0
package/src/dashboard/index.html
CHANGED
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
<div class="crt-vignette"></div>
|
|
17
17
|
|
|
18
18
|
<div class="pixel-app">
|
|
19
|
+
<!-- STARTUP OFFICE HEADER -->
|
|
19
20
|
<!-- STARTUP OFFICE HEADER -->
|
|
20
21
|
<header class="arcade-header">
|
|
21
22
|
<div class="header-left">
|
|
@@ -34,24 +35,63 @@
|
|
|
34
35
|
|
|
35
36
|
<div class="header-center">
|
|
36
37
|
<div class="office-meters">
|
|
37
|
-
<div class="meter-item">
|
|
38
|
+
<div class="meter-item" title="Team Fuel Meter">
|
|
38
39
|
<span class="meter-label">☕ COFFEE:</span>
|
|
39
|
-
<div class="pixel-meter"><div class="pixel-meter-fill" id="coffeeFill" style="width:
|
|
40
|
+
<div class="pixel-meter"><div class="pixel-meter-fill" id="coffeeFill" style="width: 92%;"></div></div>
|
|
40
41
|
</div>
|
|
41
|
-
<div class="meter-item">
|
|
42
|
+
<div class="meter-item" title="Swarm Execution Velocity">
|
|
42
43
|
<span class="meter-label">⚡ VELOCITY:</span>
|
|
43
|
-
<div class="pixel-meter"><div class="pixel-meter-fill velocity" id="velocityFill" style="width:
|
|
44
|
+
<div class="pixel-meter"><div class="pixel-meter-fill velocity" id="velocityFill" style="width: 98%;"></div></div>
|
|
44
45
|
</div>
|
|
45
46
|
</div>
|
|
46
47
|
<div class="status-indicator" id="swarmStatusBadge">
|
|
47
48
|
<span class="status-dot" id="statusDot"></span>
|
|
48
49
|
<span class="status-text" id="swarmStatusText">STANDBY</span>
|
|
49
50
|
</div>
|
|
51
|
+
<div class="provider-indicator clickable-badge" id="providerBadge" title="Click to inspect / switch Coding Agent Provider">
|
|
52
|
+
<span class="provider-icon" id="providerIcon">🪐</span>
|
|
53
|
+
<div class="provider-meta">
|
|
54
|
+
<span class="provider-label">PROVIDER:</span>
|
|
55
|
+
<span class="provider-name" id="providerName">ANTIGRAVITY</span>
|
|
56
|
+
</div>
|
|
57
|
+
<span class="provider-chevron">▼</span>
|
|
58
|
+
</div>
|
|
50
59
|
</div>
|
|
51
60
|
|
|
52
61
|
<div class="header-right">
|
|
62
|
+
<!-- REAL-TIME TOKEN TELEMETRY BADGE -->
|
|
63
|
+
<div class="token-telemetry-badge clickable-badge" id="btnTokenAnalyticsModal" title="Click to open Real-Time Token Telemetry & Analytics Center">
|
|
64
|
+
<span class="token-telemetry-icon">⚡</span>
|
|
65
|
+
<div class="token-telemetry-meta">
|
|
66
|
+
<span class="token-telemetry-label">TASK TOKENS:</span>
|
|
67
|
+
<span class="token-telemetry-val" id="headerTokenVal">0 tok</span>
|
|
68
|
+
</div>
|
|
69
|
+
<span class="token-telemetry-pill" id="headerSavedPill">72% SAVED</span>
|
|
70
|
+
</div>
|
|
71
|
+
|
|
72
|
+
<!-- PROCEDURAL LO-FI MUSIC PLAYER -->
|
|
73
|
+
<div class="lofi-player-box" id="lofiPlayerBox" title="Procedural Lo-Fi Music Synthesizer & Radio">
|
|
74
|
+
<button class="pixel-btn btn-sm btn-lofi" id="btnLofiToggle" title="Play / Pause Lo-Fi Beats">
|
|
75
|
+
<span id="lofiPlayIcon">▶</span> <span id="lofiBtnLabel">LO-FI BEATS</span>
|
|
76
|
+
</button>
|
|
77
|
+
<div class="lofi-visualizer" id="lofiVisualizer">
|
|
78
|
+
<div class="lofi-bar"></div>
|
|
79
|
+
<div class="lofi-bar"></div>
|
|
80
|
+
<div class="lofi-bar"></div>
|
|
81
|
+
<div class="lofi-bar"></div>
|
|
82
|
+
<div class="lofi-bar"></div>
|
|
83
|
+
</div>
|
|
84
|
+
<select class="lofi-select" id="lofiTrackSelect" title="Select Lo-Fi Track Preset">
|
|
85
|
+
<option value="floor42">☕ Floor 42 Midnight</option>
|
|
86
|
+
<option value="rainy">🌧️ Rainy Terminal</option>
|
|
87
|
+
<option value="antigravity">🪐 Antigravity Orbit</option>
|
|
88
|
+
<option value="retro8bit">🕹️ 8-Bit Retro Café</option>
|
|
89
|
+
</select>
|
|
90
|
+
<input type="range" class="lofi-vol-slider" id="lofiVolSlider" min="0" max="100" value="70" title="Lo-Fi Volume" />
|
|
91
|
+
</div>
|
|
92
|
+
|
|
53
93
|
<button class="pixel-btn btn-sm btn-primary" id="btnOneShotModal" title="Open OneShot Multi-Agent Website Generator">
|
|
54
|
-
<span>✦</span> ONESHOT
|
|
94
|
+
<span>✦</span> ONESHOT
|
|
55
95
|
</button>
|
|
56
96
|
<button class="pixel-btn btn-sm btn-info" id="btnReportsToggle" title="Open Sprint Audit Reports History [R]">
|
|
57
97
|
<span>📋</span> REPORTS (<span id="reportsCountBadge">0</span>)
|
|
@@ -69,35 +109,66 @@
|
|
|
69
109
|
<span>🔄</span> RESET
|
|
70
110
|
</button>
|
|
71
111
|
<button class="pixel-btn btn-sm btn-primary" id="btnDemo" title="Launch Startup Sprint Demo">
|
|
72
|
-
<span>🚀</span>
|
|
112
|
+
<span>🚀</span> DEMO
|
|
73
113
|
</button>
|
|
74
114
|
</div>
|
|
75
115
|
</header>
|
|
76
116
|
|
|
117
|
+
<!-- LIVE ACTIVE TASK HUD BANNER -->
|
|
118
|
+
<section class="active-task-hud" id="activeTaskHud">
|
|
119
|
+
<div class="hud-left">
|
|
120
|
+
<span class="hud-pulse-dot"></span>
|
|
121
|
+
<span class="hud-label">ACTIVE OBJECTIVE:</span>
|
|
122
|
+
<span class="hud-task-text" id="hudActiveTaskText">Ready for mission dispatch — type / or select a ticket below</span>
|
|
123
|
+
</div>
|
|
124
|
+
<div class="hud-right">
|
|
125
|
+
<div class="hud-token-badge" id="hudTokenBadge" title="Real-time tokens consumed for this task">
|
|
126
|
+
<span class="hud-token-icon">⚡</span>
|
|
127
|
+
<span class="hud-token-val" id="hudTokenVal">0 tokens</span>
|
|
128
|
+
<span class="hud-cost-val" id="hudCostVal">($0.00)</span>
|
|
129
|
+
</div>
|
|
130
|
+
<div class="hud-tool-badge" id="hudToolBadge" style="display: none;">
|
|
131
|
+
<span class="tool-badge-icon">⚡</span>
|
|
132
|
+
<span class="tool-badge-name" id="hudToolName">TOOL: view_file</span>
|
|
133
|
+
</div>
|
|
134
|
+
<div class="hud-timer-box">
|
|
135
|
+
<span class="hud-timer-label">SPRINT TIME:</span>
|
|
136
|
+
<span class="hud-timer-val" id="hudTimerVal">00:00</span>
|
|
137
|
+
</div>
|
|
138
|
+
</div>
|
|
139
|
+
</section>
|
|
140
|
+
|
|
77
141
|
<!-- SPRINT OBJECTIVE & TASK BAR -->
|
|
78
142
|
<section class="task-dispatch-section">
|
|
79
143
|
<form class="task-form" id="taskForm">
|
|
80
144
|
<div class="prompt-input-wrapper">
|
|
81
|
-
<span class="prompt-prefix">SPRINT
|
|
145
|
+
<span class="prompt-prefix">SPRINT ></span>
|
|
82
146
|
<input
|
|
83
147
|
type="text"
|
|
84
148
|
class="pixel-input"
|
|
85
149
|
id="taskInput"
|
|
86
|
-
placeholder="
|
|
150
|
+
placeholder="Type / for slash commands (/oneshot, /plan, /crew, /review...) or assign any product goal..."
|
|
87
151
|
autocomplete="off"
|
|
88
152
|
/>
|
|
89
153
|
<button type="submit" class="pixel-btn btn-primary" id="btnSubmitTask">
|
|
90
|
-
<span>💻</span>
|
|
154
|
+
<span>💻</span> RUN / DISPATCH
|
|
91
155
|
</button>
|
|
156
|
+
|
|
157
|
+
<!-- SLASH COMMAND AUTOCOMPLETE POPUP -->
|
|
158
|
+
<div class="command-autocomplete-popup" id="commandAutocomplete" style="display: none;">
|
|
159
|
+
<div class="autocomplete-header">COMMANDS <span class="autocomplete-hint">Tab or Enter to select • Esc to dismiss</span></div>
|
|
160
|
+
<div class="autocomplete-list" id="autocompleteList"></div>
|
|
161
|
+
</div>
|
|
92
162
|
</div>
|
|
93
163
|
</form>
|
|
94
164
|
<div class="quick-prompts">
|
|
95
165
|
<span class="quick-title">QUICK TICKETS:</span>
|
|
96
|
-
<button class="quick-tag" data-prompt="Build a modern website for a design agency specializing in AI products. Dark, editorial, premium.">✦
|
|
97
|
-
<button class="quick-tag" data-prompt="Build a modern portfolio for an AI engineer inspired by editorial design and developer tools.">✦
|
|
166
|
+
<button class="quick-tag" data-prompt="/oneshot Build a modern website for a design agency specializing in AI products. Dark, editorial, premium.">✦ /oneshot AI Agency</button>
|
|
167
|
+
<button class="quick-tag" data-prompt="/oneshot Build a modern portfolio for an AI engineer inspired by editorial design and developer tools.">✦ /oneshot AI Portfolio</button>
|
|
168
|
+
<button class="quick-tag" data-prompt="/plan Build high-performance real-time SaaS vector query engine">⚡ /plan SaaS Infra</button>
|
|
169
|
+
<button class="quick-tag" data-prompt="/review">🔍 /review Quality</button>
|
|
170
|
+
<button class="quick-tag" data-prompt="/doctor">🩺 /doctor Providers</button>
|
|
98
171
|
<button class="quick-tag" data-prompt="Find slow Prisma queries and create optimized database index">☕ DB: Optimize Indexes</button>
|
|
99
|
-
<button class="quick-tag" data-prompt="Build customer CRM dashboard with React and API endpoints">🎨 FE/BE: Build CRM Module</button>
|
|
100
|
-
<button class="quick-tag" data-prompt="Audit security authentication and profile Core Web Vitals">🛡️ SEC/PERF: Audit & Speed</button>
|
|
101
172
|
</div>
|
|
102
173
|
</section>
|
|
103
174
|
|
|
@@ -157,16 +228,20 @@
|
|
|
157
228
|
</div>
|
|
158
229
|
</section>
|
|
159
230
|
|
|
160
|
-
<!-- BOTTOM SPLIT:
|
|
231
|
+
<!-- BOTTOM SPLIT: SIDECHAT STREAM / SLACK & JIRA SKILLS -->
|
|
161
232
|
<div class="bottom-split-section">
|
|
162
|
-
<!-- STARTUP
|
|
233
|
+
<!-- STARTUP STREAM & LIVE CODING AGENT SIDECHAT -->
|
|
163
234
|
<section class="activity-panel pixel-panel">
|
|
164
235
|
<div class="panel-header">
|
|
165
|
-
<div class="
|
|
166
|
-
<
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
236
|
+
<div class="stream-tab-controls">
|
|
237
|
+
<button class="stream-tab active" id="tabSidechat" data-mode="sidechat">
|
|
238
|
+
<span class="tab-dot live-pulse"></span>
|
|
239
|
+
<span>⚡ #AI-SIDECHAT</span>
|
|
240
|
+
<span class="tab-badge" id="sidechatCountBadge">LIVE</span>
|
|
241
|
+
</button>
|
|
242
|
+
<button class="stream-tab" id="tabSlack" data-mode="slack">
|
|
243
|
+
<span>💬 #TEAM-SLACK</span>
|
|
244
|
+
</button>
|
|
170
245
|
</div>
|
|
171
246
|
<div class="activity-actions">
|
|
172
247
|
<div class="filter-group" id="agentFilters">
|
|
@@ -179,10 +254,28 @@
|
|
|
179
254
|
<button class="filter-chip" data-filter="performance">#PERF</button>
|
|
180
255
|
<button class="filter-chip" data-filter="qa">#QA</button>
|
|
181
256
|
</div>
|
|
257
|
+
<button class="pixel-btn btn-xs" id="btnAutoScroll" title="Toggle Auto-Scroll Lock">
|
|
258
|
+
<span id="autoScrollIcon">⬇️</span> LOCK
|
|
259
|
+
</button>
|
|
182
260
|
<button class="pixel-btn btn-xs" id="btnClearLogs">CLEAR</button>
|
|
183
261
|
</div>
|
|
184
262
|
</div>
|
|
185
|
-
|
|
263
|
+
|
|
264
|
+
<!-- SIDECHAT STREAM CONTAINER (ANTIGRAVITY IDE SIDECHAT VIEW) -->
|
|
265
|
+
<div class="sidechat-stream-container" id="sidechatStream">
|
|
266
|
+
<div class="sidechat-intro-card">
|
|
267
|
+
<div class="sidechat-intro-header">
|
|
268
|
+
<span class="intro-icon">🪐</span>
|
|
269
|
+
<div>
|
|
270
|
+
<div class="intro-title">ANTIGRAVITY REALTIME AGENT STREAM</div>
|
|
271
|
+
<div class="intro-sub">Live telemetry: thought reasoning, tool invocations, subagents & file modifications</div>
|
|
272
|
+
</div>
|
|
273
|
+
</div>
|
|
274
|
+
</div>
|
|
275
|
+
</div>
|
|
276
|
+
|
|
277
|
+
<!-- STANDARD SLACK TERMINAL LOGS -->
|
|
278
|
+
<div class="terminal-logs" id="terminalLogs" style="display: none;">
|
|
186
279
|
<div class="log-entry log-system">
|
|
187
280
|
<span class="log-time">[09:00:00]</span>
|
|
188
281
|
<span class="log-agent log-agent-orchestrator">SLACKBOT</span>
|
|
@@ -381,14 +474,121 @@
|
|
|
381
474
|
<span>🌐</span> OPEN LIVE PREVIEW
|
|
382
475
|
</a>
|
|
383
476
|
</div>
|
|
384
|
-
<div class="preview-
|
|
385
|
-
<
|
|
477
|
+
<div class="preview-frame-wrapper" id="previewFrameWrapper">
|
|
478
|
+
<div class="preview-placeholder">Live preview will appear here upon sprint completion.</div>
|
|
386
479
|
</div>
|
|
387
480
|
</div>
|
|
388
481
|
</div>
|
|
389
482
|
</div>
|
|
390
483
|
</div>
|
|
391
484
|
</div>
|
|
485
|
+
|
|
486
|
+
<!-- REAL-TIME TOKEN TELEMETRY & ANALYTICS MODAL -->
|
|
487
|
+
<div class="pixel-modal-backdrop" id="tokenAnalyticsModal">
|
|
488
|
+
<div class="pixel-modal-card token-modal-card">
|
|
489
|
+
<div class="modal-header">
|
|
490
|
+
<div class="modal-title-box">
|
|
491
|
+
<span class="modal-agent-icon">⚡</span>
|
|
492
|
+
<h2 class="modal-agent-name" style="color: var(--color-green);">REAL-TIME TOKEN TELEMETRY & EFFICIENCY CENTER</h2>
|
|
493
|
+
</div>
|
|
494
|
+
<button class="pixel-btn btn-sm btn-warn" id="btnCloseTokenModal">✕</button>
|
|
495
|
+
</div>
|
|
496
|
+
<div class="modal-body token-modal-body">
|
|
497
|
+
<!-- Top Stats KPI Grid -->
|
|
498
|
+
<div class="token-analytics-kpi-grid">
|
|
499
|
+
<div class="token-kpi-card">
|
|
500
|
+
<span class="kpi-label">TOTAL TOKENS USED</span>
|
|
501
|
+
<span class="kpi-val text-cyan" id="modalActualTokens">0</span>
|
|
502
|
+
<span class="kpi-sub" id="modalTokenVelocity">⚡ 0 tok/sec</span>
|
|
503
|
+
</div>
|
|
504
|
+
<div class="token-kpi-card highlight-green">
|
|
505
|
+
<span class="kpi-label">TOKENS CONSERVED</span>
|
|
506
|
+
<span class="kpi-val text-green" id="modalSavedTokens">0 (72%)</span>
|
|
507
|
+
<span class="kpi-sub" id="modalRawTokens">Raw Est: 0</span>
|
|
508
|
+
</div>
|
|
509
|
+
<div class="token-kpi-card">
|
|
510
|
+
<span class="kpi-label">ESTIMATED COST</span>
|
|
511
|
+
<span class="kpi-val text-gold" id="modalEstCost">$0.0000</span>
|
|
512
|
+
<span class="kpi-sub" id="modalCostSaved">Saved: $0.0000</span>
|
|
513
|
+
</div>
|
|
514
|
+
<div class="token-kpi-card">
|
|
515
|
+
<span class="kpi-label">PROMPT / COMPLETION</span>
|
|
516
|
+
<span class="kpi-val" id="modalPromptOutputRatio">0 / 0</span>
|
|
517
|
+
<span class="kpi-sub" id="modalCachedTokens">Cached: 0</span>
|
|
518
|
+
</div>
|
|
519
|
+
</div>
|
|
520
|
+
|
|
521
|
+
<!-- Real-Time Token Generation Sparkline Canvas -->
|
|
522
|
+
<div class="token-chart-section">
|
|
523
|
+
<div class="chart-header">
|
|
524
|
+
<span class="chart-title">REAL-TIME TOKEN STREAM (LIVE EMISSIONS)</span>
|
|
525
|
+
<span class="chart-live-indicator">● LIVE SSE STREAM</span>
|
|
526
|
+
</div>
|
|
527
|
+
<div class="sparkline-container">
|
|
528
|
+
<canvas id="tokenSparklineCanvas" width="800" height="130" class="sparkline-canvas"></canvas>
|
|
529
|
+
</div>
|
|
530
|
+
</div>
|
|
531
|
+
|
|
532
|
+
<!-- Per-Agent Token Distribution Bars -->
|
|
533
|
+
<div class="token-agent-breakdown-section">
|
|
534
|
+
<div class="breakdown-header">
|
|
535
|
+
<span class="breakdown-title">PER-AGENT TOKEN ATTRIBUTION</span>
|
|
536
|
+
<span class="breakdown-subtitle">Live tokens consumed across engineering squads</span>
|
|
537
|
+
</div>
|
|
538
|
+
<div class="agent-token-bars" id="agentTokenBars">
|
|
539
|
+
<!-- Dynamically populated by app.js -->
|
|
540
|
+
</div>
|
|
541
|
+
</div>
|
|
542
|
+
|
|
543
|
+
<!-- Optimization Strategies Active -->
|
|
544
|
+
<div class="token-strategies-card">
|
|
545
|
+
<div class="strategies-title">ACTIVE TOKEN CONSERVATION STRATEGIES:</div>
|
|
546
|
+
<div class="strategies-pills-list">
|
|
547
|
+
<span class="strat-pill active">✓ AST Symbol Graph Skeletonization (-45%)</span>
|
|
548
|
+
<span class="strat-pill active">✓ Sliding Window Context Pruning (-15%)</span>
|
|
549
|
+
<span class="strat-pill active">✓ Prompt Caching Prefix Anchoring (-12%)</span>
|
|
550
|
+
<span class="strat-pill active">✓ Compact JSON Envelopes (-8%)</span>
|
|
551
|
+
<span class="strat-pill active">✓ Isolated Subagent Sandboxes</span>
|
|
552
|
+
</div>
|
|
553
|
+
</div>
|
|
554
|
+
</div>
|
|
555
|
+
</div>
|
|
556
|
+
</div>
|
|
557
|
+
|
|
558
|
+
<!-- PROVIDER SELECTOR & ENVIRONMENT DIAGNOSTICS MODAL -->
|
|
559
|
+
<div class="pixel-modal-backdrop" id="providerModal">
|
|
560
|
+
<div class="pixel-modal-card provider-modal-card">
|
|
561
|
+
<div class="modal-header">
|
|
562
|
+
<div class="modal-title-box">
|
|
563
|
+
<span class="modal-agent-icon">🪐</span>
|
|
564
|
+
<h2 class="modal-agent-name" style="color: var(--color-cyan);">CODING AGENT PROVIDER & RUNTIME</h2>
|
|
565
|
+
</div>
|
|
566
|
+
<button class="pixel-btn btn-sm btn-warn" id="btnCloseProviderModal">✕</button>
|
|
567
|
+
</div>
|
|
568
|
+
<div class="modal-body provider-modal-body">
|
|
569
|
+
<div class="provider-info-banner">
|
|
570
|
+
<div class="provider-banner-left">
|
|
571
|
+
<span class="active-prov-icon" id="modalActiveProvIcon">🪐</span>
|
|
572
|
+
<div>
|
|
573
|
+
<div class="active-prov-title">ACTIVE: <span id="modalActiveProvName">Google Antigravity</span></div>
|
|
574
|
+
<div class="active-prov-desc" id="modalActiveProvDesc">Google Antigravity SDK & Advanced Agentic Coding environment</div>
|
|
575
|
+
</div>
|
|
576
|
+
</div>
|
|
577
|
+
<span class="active-status-badge">● RUNNING IN REALTIME</span>
|
|
578
|
+
</div>
|
|
579
|
+
|
|
580
|
+
<div class="provider-list-title">DETECTED PROVIDERS & IDES:</div>
|
|
581
|
+
<div class="provider-grid" id="providerGrid">
|
|
582
|
+
<!-- Populated by app.js -->
|
|
583
|
+
</div>
|
|
584
|
+
|
|
585
|
+
<div class="provider-tips">
|
|
586
|
+
<span>💡 <strong>Tip:</strong> PixelCrew automatically syncs skills and streams live actions across Google Antigravity, Kiro, Claude Code, and Cursor IDE.</span>
|
|
587
|
+
</div>
|
|
588
|
+
</div>
|
|
589
|
+
</div>
|
|
590
|
+
</div>
|
|
591
|
+
|
|
392
592
|
<footer class="arcade-footer">
|
|
393
593
|
<div class="footer-left">
|
|
394
594
|
<span>PRESS [1..6] EMPLOYEE PROFILE</span>
|