@whykusanagi/corrupted-theme 0.1.2 → 0.1.3

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.
Files changed (44) hide show
  1. package/CHANGELOG.md +133 -0
  2. package/README.md +6 -0
  3. package/docs/CAPABILITIES.md +209 -0
  4. package/docs/CHARACTER_LEVEL_CORRUPTION.md +264 -0
  5. package/docs/CORRUPTION_PHRASES.md +529 -0
  6. package/docs/FUTURE_WORK.md +189 -0
  7. package/docs/IMPLEMENTATION_VALIDATION.md +401 -0
  8. package/docs/LLM_PROVIDERS.md +345 -0
  9. package/docs/PERSONALITY.md +128 -0
  10. package/docs/ROADMAP.md +266 -0
  11. package/docs/ROUTING.md +324 -0
  12. package/docs/STYLE_GUIDE.md +605 -0
  13. package/docs/brand/BRAND_OVERVIEW.md +413 -0
  14. package/docs/brand/COLOR_SYSTEM.md +583 -0
  15. package/docs/brand/DESIGN_TOKENS.md +1009 -0
  16. package/docs/brand/TRANSLATION_FAILURE_AESTHETIC.md +525 -0
  17. package/docs/brand/TYPOGRAPHY.md +624 -0
  18. package/docs/components/ANIMATION_GUIDELINES.md +901 -0
  19. package/docs/components/COMPONENT_LIBRARY.md +1061 -0
  20. package/docs/components/GLASSMORPHISM.md +602 -0
  21. package/docs/components/INTERACTIVE_STATES.md +766 -0
  22. package/docs/governance/CONTRIBUTION_GUIDELINES.md +593 -0
  23. package/docs/governance/DESIGN_SYSTEM_GOVERNANCE.md +451 -0
  24. package/docs/governance/VERSION_MANAGEMENT.md +447 -0
  25. package/docs/governance/VERSION_REFERENCES.md +229 -0
  26. package/docs/platforms/CLI_IMPLEMENTATION.md +1025 -0
  27. package/docs/platforms/COMPONENT_MAPPING.md +579 -0
  28. package/docs/platforms/NPM_PACKAGE.md +854 -0
  29. package/docs/platforms/WEB_IMPLEMENTATION.md +1221 -0
  30. package/docs/standards/ACCESSIBILITY.md +715 -0
  31. package/docs/standards/ANTI_PATTERNS.md +554 -0
  32. package/docs/standards/SPACING_SYSTEM.md +549 -0
  33. package/examples/button.html +1 -1
  34. package/examples/card.html +1 -1
  35. package/examples/form.html +1 -1
  36. package/examples/index.html +2 -2
  37. package/examples/layout.html +1 -1
  38. package/examples/nikke-team-builder.html +1 -1
  39. package/examples/showcase-complete.html +840 -15
  40. package/examples/showcase.html +1 -1
  41. package/package.json +4 -2
  42. package/src/css/components.css +676 -0
  43. package/src/lib/character-corruption.js +563 -0
  44. package/src/lib/components.js +283 -0
@@ -0,0 +1,266 @@
1
+ # CelesteCLI Roadmap
2
+
3
+ This document tracks planned features, enhancements, and potential migrations for CelesteCLI.
4
+
5
+ ## Current Status (December 2025)
6
+
7
+ ### ✅ Completed
8
+ - Enterprise-grade RPG menu system with contextual help
9
+ - 18 AI-powered skills via function calling
10
+ - Multi-provider support (OpenAI, Grok, Venice, Anthropic, OpenRouter, DigitalOcean)
11
+ - Vertex AI support via OpenAI-compatible endpoint
12
+ - Session persistence and auto-save
13
+ - NSFW mode with Venice.ai image generation
14
+ - Context-aware /safe command
15
+ - Tool result filtering (hide raw JSON from UI)
16
+
17
+ ---
18
+
19
+ ## Short-Term (Q1 2025)
20
+
21
+ ### High Priority
22
+
23
+ #### 1. Vertex AI (Google Cloud) Setup Guide
24
+ - **Status**: Requires complex Google Cloud configuration
25
+ - **Goal**: Document complete Vertex AI setup for enterprise users
26
+ - **Provider Clarification**:
27
+ - **Gemini AI (AI Studio)**: Simple API keys ✅ READY
28
+ - **Vertex AI (Google Cloud)**: OAuth2 tokens, requires setup ⚠️ ENTERPRISE ONLY
29
+
30
+ **Vertex AI Requirements:**
31
+ 1. **Google Cloud Project**: Active GCP project with billing enabled
32
+ 2. **Vertex AI API**: Enable Vertex AI API in GCP console
33
+ 3. **Service Account**: Create service account with `Vertex AI User` role
34
+ 4. **Authentication**: Use OAuth2 tokens (NOT simple API keys)
35
+ 5. **Token Management**: Tokens expire after 1 hour, need refresh mechanism
36
+
37
+ **Endpoint URL Format:**
38
+ ```
39
+ https://aiplatform.googleapis.com/v1/projects/{PROJECT_ID}/locations/{LOCATION}/endpoints/openapi
40
+ ```
41
+
42
+ **Configuration Example:**
43
+ ```json
44
+ {
45
+ "api_key": "ya29.c.c0ASRK0Ga...", // OAuth2 access token
46
+ "base_url": "https://aiplatform.googleapis.com/v1/projects/my-project/locations/us-central1/endpoints/openapi",
47
+ "model": "gemini-2.0-flash",
48
+ "timeout": 60
49
+ }
50
+ ```
51
+
52
+ **Token Generation (Go example):**
53
+ ```go
54
+ import "golang.org/x/oauth2/google"
55
+
56
+ creds, _ := google.FindDefaultCredentials(ctx, "https://www.googleapis.com/auth/cloud-platform")
57
+ token, _ := creds.TokenSource.Token()
58
+ config.APIKey = token.AccessToken
59
+ ```
60
+
61
+ **Why Most Users Should Use Gemini Instead:**
62
+ - Gemini AI: Simple API key from https://aistudio.google.com/apikey
63
+ - Vertex AI: Requires GCP project, billing, OAuth2 setup
64
+ - Both use same Gemini models, same function calling capabilities
65
+ - Vertex AI is for enterprise users with existing GCP infrastructure
66
+
67
+ - **Decision**: Gemini AI is the recommended provider for most users
68
+
69
+ #### 2. Improve Error Messaging
70
+ - **Goal**: Better error messages for common issues
71
+ - **Tasks**:
72
+ - [ ] API key validation on startup
73
+ - [ ] Clear messages for unsupported model features
74
+ - [ ] Network timeout handling with retry suggestions
75
+ - [ ] Configuration validation with fix suggestions
76
+
77
+ #### 3. Performance Optimization
78
+ - **Goal**: Reduce latency and improve responsiveness
79
+ - **Tasks**:
80
+ - [ ] Stream parsing optimization
81
+ - [ ] Reduce re-renders in TUI
82
+ - [ ] Cache provider model lists
83
+ - [ ] Lazy-load skill definitions
84
+
85
+ ### Medium Priority
86
+
87
+ #### 4. Enhanced Skill Management
88
+ - **Goal**: Better skill discovery and usage
89
+ - **Tasks**:
90
+ - [ ] /skills menu shows skill descriptions on hover/selection
91
+ - [ ] Skill usage examples in help text
92
+ - [ ] Skill execution history (recent skills used)
93
+ - [ ] Skill favorites/pinning
94
+
95
+ #### 5. Configuration Management
96
+ - **Goal**: Easier config switching and management
97
+ - **Tasks**:
98
+ - [ ] /config list shows model details and capabilities
99
+ - [ ] /config test <profile> - test API connectivity
100
+ - [ ] Config templates for common providers
101
+ - [ ] Import/export config profiles
102
+
103
+ ---
104
+
105
+ ## Medium-Term (Q2-Q3 2025)
106
+
107
+ ### Research & Evaluation
108
+
109
+ #### 6. Native Vertex AI SDK Migration (Option B)
110
+ - **Status**: Documented as potential enhancement
111
+ - **Trigger**: If Google deprecates OpenAI-compatible endpoint OR performance benefits are significant
112
+ - **Complexity**: MEDIUM (8-12 hours estimated)
113
+ - **Impact**: Better long-term stability, native Gemini features
114
+
115
+ **Migration Plan**:
116
+
117
+ ##### Phase 1: Research & Prototyping (2-3 hours)
118
+ - [ ] Set up native genai SDK in test branch
119
+ - [ ] Prototype skill definition conversion (JSON → genai.FunctionDeclaration)
120
+ - [ ] Test response parsing (functionCall vs tool_calls)
121
+ - [ ] Benchmark performance vs OpenAI-compatible endpoint
122
+
123
+ ##### Phase 2: Abstraction Layer (3-4 hours)
124
+ - [ ] Create provider abstraction interface
125
+ - [ ] Implement OpenAI provider adapter
126
+ - [ ] Implement native Gemini provider adapter
127
+ - [ ] Unified response format converter
128
+
129
+ ##### Phase 3: Testing & Validation (2-3 hours)
130
+ - [ ] Test all 18 skills with native SDK
131
+ - [ ] Validate function calling accuracy
132
+ - [ ] Test multi-turn conversations
133
+ - [ ] Compare performance metrics
134
+
135
+ ##### Phase 4: Migration (1-2 hours)
136
+ - [ ] Switch default Vertex AI provider to native SDK
137
+ - [ ] Update documentation
138
+ - [ ] Deprecation notice for OpenAI-compatible endpoint
139
+
140
+ **Code Structure Example**:
141
+ ```go
142
+ // Future architecture with provider abstraction
143
+
144
+ type Provider interface {
145
+ SendMessage(ctx context.Context, messages []Message, tools []Tool) (*Response, error)
146
+ SupportsFunctionCalling() bool
147
+ ConvertSkillDefinition(skill SkillDefinition) interface{}
148
+ }
149
+
150
+ type OpenAIProvider struct {
151
+ client *openai.Client
152
+ }
153
+
154
+ type GeminiProvider struct {
155
+ client *genai.Client
156
+ }
157
+
158
+ // Skills remain unchanged - adapters handle conversion
159
+ ```
160
+
161
+ **Decision Criteria**:
162
+ - Google announces deprecation of OpenAI endpoint → Migrate immediately
163
+ - Native SDK shows >20% performance improvement → Evaluate migration
164
+ - Native SDK enables exclusive features → Evaluate value vs effort
165
+ - Community reports OpenAI endpoint issues → Migrate proactively
166
+
167
+ **Resources**:
168
+ - [Google GenAI SDK Docs](https://pkg.go.dev/google.golang.org/genai)
169
+ - [Function Calling Guide](https://ai.google.dev/gemini-api/docs/function-calling)
170
+ - [Migration Guide](https://ai.google.dev/gemini-api/docs/migrate)
171
+
172
+ ---
173
+
174
+ ### Feature Enhancements
175
+
176
+ #### 7. Advanced Skill Features
177
+ - **Goal**: More powerful AI capabilities
178
+ - **Tasks**:
179
+ - [ ] Parallel skill execution (when LLM calls multiple)
180
+ - [ ] Skill chaining (output of one feeds another)
181
+ - [ ] Custom user-defined skills (plugin system)
182
+ - [ ] Skill templates and generators
183
+
184
+ #### 8. Conversation Management
185
+ - **Goal**: Better session handling
186
+ - **Tasks**:
187
+ - [ ] Named sessions (save/load by name)
188
+ - [ ] Session search (find past conversations)
189
+ - [ ] Session export (markdown, JSON)
190
+ - [ ] Session branching (fork conversation)
191
+
192
+ #### 9. Multi-Modal Support
193
+ - **Goal**: Beyond text interactions
194
+ - **Tasks**:
195
+ - [ ] Image input support (upload images for analysis)
196
+ - [ ] File attachment support
197
+ - [ ] Voice input/output (ElevenLabs integration)
198
+ - [ ] PDF parsing and analysis
199
+
200
+ ---
201
+
202
+ ## Long-Term (Q4 2025+)
203
+
204
+ ### Major Features
205
+
206
+ #### 10. Team/Collaboration Features
207
+ - **Goal**: Multi-user support
208
+ - **Tasks**:
209
+ - [ ] Shared sessions
210
+ - [ ] Team workspaces
211
+ - [ ] Permission management
212
+ - [ ] Audit logs
213
+
214
+ #### 11. Cloud Sync
215
+ - **Goal**: Cross-device session sync
216
+ - **Tasks**:
217
+ - [ ] Optional cloud backup
218
+ - [ ] Encrypted session storage
219
+ - [ ] Device sync
220
+ - [ ] Web UI companion
221
+
222
+ #### 12. Advanced Analytics
223
+ - **Goal**: Usage insights
224
+ - **Tasks**:
225
+ - [ ] Token usage tracking
226
+ - [ ] Cost estimation per provider
227
+ - [ ] Skill usage analytics
228
+ - [ ] Performance metrics dashboard
229
+
230
+ ---
231
+
232
+ ## Deprecated/Archived
233
+
234
+ ### Considered but Deferred
235
+ - **Local LLM support**: Complexity vs benefit ratio too high for v1
236
+ - **Browser extension**: Scope too large, focus on CLI first
237
+ - **Mobile app**: Desktop/terminal focus more valuable
238
+
239
+ ---
240
+
241
+ ## Contributing to Roadmap
242
+
243
+ This roadmap is living document. To propose additions:
244
+
245
+ 1. Check existing items to avoid duplicates
246
+ 2. Open GitHub issue with `[Roadmap]` prefix
247
+ 3. Describe:
248
+ - Use case and problem being solved
249
+ - Estimated complexity (LOW/MEDIUM/HIGH)
250
+ - Impact on existing features
251
+ - User benefit
252
+
253
+ Priority is determined by:
254
+ - User requests and feedback
255
+ - Technical dependencies
256
+ - Maintenance burden
257
+ - Strategic value
258
+
259
+ ---
260
+
261
+ ## Version History
262
+
263
+ - **v0.1** (Dec 2025): Initial roadmap creation
264
+ - Enterprise menu system complete
265
+ - Vertex AI OpenAI-compatible endpoint implemented
266
+ - Native SDK migration documented as Option B
@@ -0,0 +1,324 @@
1
+ # Celeste ↔ NIKKE Sub-Agent Routing Architecture
2
+
3
+ ## Overview
4
+
5
+ Celeste uses intelligent intent detection to route queries:
6
+ - **NIKKE queries** → NIKKE sub-agent (dedicated for game-specific data)
7
+ - **General queries** → Main Celeste agent (personality + streaming + general chat)
8
+
9
+ This separation reduces context window bloat and improves response accuracy for both contexts.
10
+
11
+ ---
12
+
13
+ ## How Routing Works
14
+
15
+ ```
16
+ User Input
17
+
18
+ [celeste-widget.js: Fetch routing rules]
19
+
20
+ [Detect Intent: NIKKE keywords/patterns?]
21
+ ├─ YES (NIKKE detected)
22
+ │ └─ Route to NIKKE sub-agent
23
+ │ └─ Return formatted response
24
+ └─ NO (General query)
25
+ └─ Send to Main Celeste agent
26
+ └─ Celeste responds
27
+ ```
28
+
29
+ ---
30
+
31
+ ## Intent Detection
32
+
33
+ ### Keywords Trigger NIKKE Routing
34
+ ```
35
+ "nikke", "union raid", "ur", "intercept",
36
+ "character", "tier", "tier list", "meta", "best squad",
37
+ "farm", "build", "equipment", "weapon",
38
+ "chapter", "raid", "boss", "strategy", "guide"
39
+ ```
40
+
41
+ ### Pattern Matching
42
+ ```regex
43
+ ^(who|which).*(nikke|character).*(best|good|tier)
44
+ ^(how|tips).*(farm|clear|beat)
45
+ ^(what).*(meta|tier|build)
46
+ ^(nikke).*(tier|rank|list)
47
+ union.*raid|ur.*guide|nikke.*build
48
+ ```
49
+
50
+ ### Examples
51
+
52
+ **Triggers NIKKE Routing:**
53
+ - "Who's the best NIKKE character?"
54
+ - "How do I farm efficiently?"
55
+ - "What's the current meta?"
56
+ - "Union Raid tier list"
57
+ - "Build guide for Rapture"
58
+ - "Best squad for tower?"
59
+
60
+ **Does NOT Trigger NIKKE Routing:**
61
+ - "Hi Celeste, how are you?"
62
+ - "Tell me about yourself"
63
+ - "What's your favorite outfit?"
64
+ - "Stream recommendations?"
65
+ - "Tell me some lore"
66
+
67
+ ---
68
+
69
+ ## Configuration Files
70
+
71
+ ### `routing/routing_rules.json`
72
+ **Contains:** Intent detection patterns, NIKKE keywords, fallback messages
73
+
74
+ **Key Section:**
75
+ ```json
76
+ {
77
+ "nikke_detection": {
78
+ "keywords": ["nikke", "union raid", ...],
79
+ "patterns": [
80
+ "^(who|which).*(nikke|character).*(best|good|tier)",
81
+ ...
82
+ ]
83
+ },
84
+ "routing_rules": [
85
+ {
86
+ "condition": "query_matches(nikke_detection)",
87
+ "action": "route_to_sub_agent",
88
+ "sub_agent": "nikke_agent",
89
+ "fallback_message": "The NIKKE archives are temporarily sealed..."
90
+ }
91
+ ]
92
+ }
93
+ ```
94
+
95
+ ### `routing/nikke_agent_config.json`
96
+ **Contains:** Sub-agent endpoint, auth, timeouts, OpenSearch indices
97
+
98
+ **Key Section:**
99
+ ```json
100
+ {
101
+ "nikke_agent": {
102
+ "endpoint": "${NIKKE_AGENT_ENDPOINT}",
103
+ "auth": {
104
+ "scheme": "bearer",
105
+ "key": "${NIKKE_AGENT_KEY}"
106
+ },
107
+ "timeouts": {
108
+ "connect_ms": 5000,
109
+ "read_ms": 10000,
110
+ "total_ms": 10000
111
+ }
112
+ }
113
+ }
114
+ ```
115
+
116
+ ---
117
+
118
+ ## Environment Variables
119
+
120
+ Set these in your `.env` or deployment configuration:
121
+
122
+ ```bash
123
+ # Main Celeste Agent (Digital Ocean)
124
+ AGENT_ENDPOINT=https://svzuwvds2ipgf4ysetvzxvai.agents.do-ai.run
125
+ AGENT_KEY=sk-xxxxx
126
+
127
+ # NIKKE Sub-Agent
128
+ NIKKE_AGENT_ENDPOINT=https://nikke-agent.whykusanagi.xyz/v1/nikke/query
129
+ NIKKE_AGENT_KEY=sk-nikke-xxxxx
130
+ ```
131
+
132
+ ---
133
+
134
+ ## Web Widget Integration
135
+
136
+ The `celeste-widget.js` loads routing rules from celesteCLI repo:
137
+
138
+ ```javascript
139
+ const CELESTE_CONFIG = {
140
+ routingRulesUrl: 'https://raw.githubusercontent.com/whykusanagi/celesteCLI/main/routing/routing_rules.json'
141
+ };
142
+
143
+ async function sendToCeleste(message) {
144
+ // Fetch routing rules
145
+ const routingRules = await fetch(CELESTE_CONFIG.routingRulesUrl).then(r => r.json());
146
+
147
+ // Detect intent
148
+ const intent = detectIntent(message, routingRules);
149
+
150
+ // Route accordingly
151
+ if (intent === 'nikke') {
152
+ // Call NIKKE sub-agent
153
+ } else {
154
+ // Call main Celeste agent
155
+ }
156
+ }
157
+ ```
158
+
159
+ ---
160
+
161
+ ## Fallback Behavior
162
+
163
+ If the NIKKE sub-agent is unavailable:
164
+
165
+ ```
166
+ User Query (NIKKE detected)
167
+
168
+ [Attempt NIKKE sub-agent]
169
+ ├─ Timeout after 10 seconds
170
+ └─ Return fallback message:
171
+ "The NIKKE archives are temporarily sealed. Ask again in a moment, onii-chan."
172
+ ```
173
+
174
+ The widget gracefully degrades instead of hanging or throwing an error.
175
+
176
+ ---
177
+
178
+ ## OpenSearch Integration
179
+
180
+ ### Celeste Indices
181
+ - `celeste_capabilities` - What Celeste can do
182
+ - `celeste_emotes` - Emote recommendations
183
+ - `celeste_user_profiles` - User behavior data
184
+ - `celeste_chat_logs` - Sample interactions
185
+
186
+ ### NIKKE Sub-Agent Indices
187
+ - `nikke_characters` - Character database
188
+ - `nikke_tiers` - Tier lists
189
+ - `nikke_guides` - Build guides
190
+ - `nikke_union_data` - Protected union data
191
+
192
+ Each agent queries its own indices only. No cross-contamination.
193
+
194
+ ---
195
+
196
+ ## Response Handling
197
+
198
+ ### NIKKE Sub-Agent Response
199
+ The sub-agent returns structured data:
200
+ ```json
201
+ {
202
+ "characters": [...],
203
+ "tiers": [...],
204
+ "builds": [...],
205
+ "recommendations": [...],
206
+ "source_indices": [...]
207
+ }
208
+ ```
209
+
210
+ Main Celeste agent formats this with personality:
211
+ ```
212
+ "Based on the archives, here's what I found:
213
+ • Top DPS: Rapi, Viper, Privaty
214
+ • Support Meta: Modernia, Ether, Helm
215
+
216
+ Want me to explain any builds, onii-chan? 💜"
217
+ ```
218
+
219
+ ### Celeste Direct Response
220
+ Main agent responds directly with personality:
221
+ ```
222
+ "Hi there! I'm Celeste, your demon noble co-host.
223
+ I can chat, moderate chat, play games... or tease you about your questionable taste. 😈
224
+ What'll it be?"
225
+ ```
226
+
227
+ ---
228
+
229
+ ## Monitoring
230
+
231
+ ### Log Entry Example
232
+ ```
233
+ [2025-11-21 14:32:10] User: "best nikke characters?"
234
+ [2025-11-21 14:32:10] Intent Detection: MATCHED (keyword="nikke")
235
+ [2025-11-21 14:32:10] Routing: NIKKE_AGENT
236
+ [2025-11-21 14:32:10] Sub-agent latency: 342ms
237
+ [2025-11-21 14:32:10] Response: [formatted with Celeste personality]
238
+ ```
239
+
240
+ ### Health Checks
241
+ ```bash
242
+ # Check main Celeste agent
243
+ curl ${AGENT_ENDPOINT}/health
244
+
245
+ # Check NIKKE sub-agent
246
+ curl ${NIKKE_AGENT_ENDPOINT}/v1/health
247
+ ```
248
+
249
+ ---
250
+
251
+ ## Troubleshooting
252
+
253
+ ### Symptom: NIKKE query routed to Celeste instead of sub-agent
254
+ **Possible Causes:**
255
+ - Routing rules not loaded correctly
256
+ - Intent detection pattern doesn't match query
257
+ - Widget JavaScript error
258
+
259
+ **Fix:**
260
+ 1. Verify routing rules fetch succeeds
261
+ 2. Check browser console for JavaScript errors
262
+ 3. Manually test intent detection regex
263
+
264
+ ### Symptom: NIKKE queries timeout
265
+ **Possible Causes:**
266
+ - Sub-agent endpoint unreachable
267
+ - Timeout too short (10s default)
268
+ - OpenSearch query is slow
269
+
270
+ **Fix:**
271
+ 1. Check `nikke_agent_config.json` endpoint
272
+ 2. Verify NIKKE_AGENT_ENDPOINT env var is set
273
+ 3. Test sub-agent health endpoint
274
+
275
+ ### Symptom: Fallback message appears frequently
276
+ **Possible Causes:**
277
+ - NIKKE sub-agent is down
278
+ - Network connectivity issue
279
+ - Timeout threshold too low
280
+
281
+ **Fix:**
282
+ 1. Check NIKKE sub-agent deployment status
283
+ 2. Increase timeout in `nikke_agent_config.json` if needed
284
+ 3. Review error logs for specific failures
285
+
286
+ ---
287
+
288
+ ## Adding New Routing Rules
289
+
290
+ To route a new query type (e.g., art questions to art agent):
291
+
292
+ 1. **Edit `routing/routing_rules.json`:**
293
+ ```json
294
+ {
295
+ "condition": "query_intent == 'art'",
296
+ "action": "route_to_sub_agent",
297
+ "sub_agent": "art_agent",
298
+ "endpoint_env_var": "ART_AGENT_ENDPOINT"
299
+ }
300
+ ```
301
+
302
+ 2. **Edit `routing/nikke_agent_config.json`** to add the new agent config
303
+
304
+ 3. **Update detection keywords/patterns** in `routing_rules.json`
305
+
306
+ 4. **Deploy** the updated files
307
+
308
+ ---
309
+
310
+ ## Performance Targets
311
+
312
+ - **Intent detection:** <10ms
313
+ - **NIKKE sub-agent call:** <10 seconds (timeout)
314
+ - **Fallback response:** <100ms
315
+ - **General Celeste response:** <5 seconds
316
+
317
+ ---
318
+
319
+ ## Related Documentation
320
+
321
+ - `../celeste_essence.json` - System prompt with routing logic
322
+ - `../Celeste_Capabilities.json` - What Celeste can do
323
+ - `../opensearch/README.md` - Index management
324
+ - `../../nikke-agent/docs/` - NIKKE sub-agent documentation