@ekkos/cli 1.3.1 → 1.3.5

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 (131) hide show
  1. package/dist/capture/jsonl-rewriter.d.ts +1 -1
  2. package/dist/capture/jsonl-rewriter.js +3 -3
  3. package/dist/capture/transcript-repair.d.ts +2 -2
  4. package/dist/capture/transcript-repair.js +2 -2
  5. package/dist/commands/claw.d.ts +13 -0
  6. package/dist/commands/claw.js +253 -0
  7. package/dist/commands/dashboard.js +742 -118
  8. package/dist/commands/doctor.d.ts +3 -3
  9. package/dist/commands/doctor.js +6 -79
  10. package/dist/commands/gemini.d.ts +19 -0
  11. package/dist/commands/gemini.js +193 -0
  12. package/dist/commands/init.d.ts +1 -0
  13. package/dist/commands/init.js +56 -41
  14. package/dist/commands/run.d.ts +0 -1
  15. package/dist/commands/run.js +288 -263
  16. package/dist/commands/scan.d.ts +21 -0
  17. package/dist/commands/scan.js +386 -0
  18. package/dist/commands/status.d.ts +4 -1
  19. package/dist/commands/status.js +165 -27
  20. package/dist/commands/swarm-dashboard.js +156 -28
  21. package/dist/commands/swarm.d.ts +1 -1
  22. package/dist/commands/swarm.js +1 -1
  23. package/dist/commands/test-claude.d.ts +2 -2
  24. package/dist/commands/test-claude.js +3 -3
  25. package/dist/deploy/index.d.ts +0 -2
  26. package/dist/deploy/index.js +0 -2
  27. package/dist/deploy/settings.d.ts +6 -5
  28. package/dist/deploy/settings.js +64 -16
  29. package/dist/deploy/skills.js +1 -2
  30. package/dist/index.js +86 -96
  31. package/dist/lib/usage-parser.d.ts +1 -1
  32. package/dist/lib/usage-parser.js +9 -6
  33. package/dist/local/index.d.ts +14 -0
  34. package/dist/local/index.js +28 -0
  35. package/dist/local/local-embeddings.d.ts +49 -0
  36. package/dist/local/local-embeddings.js +232 -0
  37. package/dist/local/offline-fallback.d.ts +44 -0
  38. package/dist/local/offline-fallback.js +159 -0
  39. package/dist/local/sqlite-store.d.ts +126 -0
  40. package/dist/local/sqlite-store.js +393 -0
  41. package/dist/local/sync-engine.d.ts +42 -0
  42. package/dist/local/sync-engine.js +223 -0
  43. package/dist/utils/platform.d.ts +5 -1
  44. package/dist/utils/platform.js +24 -4
  45. package/dist/utils/proxy-url.d.ts +21 -0
  46. package/dist/utils/proxy-url.js +34 -0
  47. package/dist/utils/state.d.ts +1 -1
  48. package/dist/utils/state.js +11 -3
  49. package/dist/utils/templates.js +1 -1
  50. package/package.json +11 -4
  51. package/templates/CLAUDE.md +49 -107
  52. package/dist/agent/daemon.d.ts +0 -130
  53. package/dist/agent/daemon.js +0 -606
  54. package/dist/agent/health-check.d.ts +0 -35
  55. package/dist/agent/health-check.js +0 -243
  56. package/dist/agent/pty-runner.d.ts +0 -53
  57. package/dist/agent/pty-runner.js +0 -190
  58. package/dist/commands/agent.d.ts +0 -50
  59. package/dist/commands/agent.js +0 -544
  60. package/dist/commands/setup-remote.d.ts +0 -20
  61. package/dist/commands/setup-remote.js +0 -582
  62. package/dist/utils/verify-remote-terminal.d.ts +0 -10
  63. package/dist/utils/verify-remote-terminal.js +0 -415
  64. package/templates/README.md +0 -378
  65. package/templates/claude-plugins/PHASE2_COMPLETION.md +0 -346
  66. package/templates/claude-plugins/PLUGIN_PROPOSALS.md +0 -1776
  67. package/templates/claude-plugins/README.md +0 -587
  68. package/templates/claude-plugins/agents/code-reviewer.json +0 -14
  69. package/templates/claude-plugins/agents/debug-detective.json +0 -15
  70. package/templates/claude-plugins/agents/git-companion.json +0 -14
  71. package/templates/claude-plugins/blog-manager/.claude-plugin/plugin.json +0 -8
  72. package/templates/claude-plugins/blog-manager/commands/blog.md +0 -691
  73. package/templates/claude-plugins/golden-loop-monitor/.claude-plugin/plugin.json +0 -8
  74. package/templates/claude-plugins/golden-loop-monitor/commands/loop-status.md +0 -434
  75. package/templates/claude-plugins/learning-tracker/.claude-plugin/plugin.json +0 -8
  76. package/templates/claude-plugins/learning-tracker/commands/my-patterns.md +0 -282
  77. package/templates/claude-plugins/memory-lens/.claude-plugin/plugin.json +0 -8
  78. package/templates/claude-plugins/memory-lens/commands/memory-search.md +0 -181
  79. package/templates/claude-plugins/pattern-coach/.claude-plugin/plugin.json +0 -8
  80. package/templates/claude-plugins/pattern-coach/commands/forge.md +0 -365
  81. package/templates/claude-plugins/project-schema-validator/.claude-plugin/plugin.json +0 -8
  82. package/templates/claude-plugins/project-schema-validator/commands/validate-schema.md +0 -582
  83. package/templates/claude-plugins-admin/AGENT_TEAM_PROPOSALS.md +0 -819
  84. package/templates/claude-plugins-admin/README.md +0 -446
  85. package/templates/claude-plugins-admin/autonomous-admin-agent/.claude-plugin/plugin.json +0 -8
  86. package/templates/claude-plugins-admin/autonomous-admin-agent/commands/agent.md +0 -595
  87. package/templates/claude-plugins-admin/backend-agent/.claude-plugin/plugin.json +0 -8
  88. package/templates/claude-plugins-admin/backend-agent/commands/backend.md +0 -798
  89. package/templates/claude-plugins-admin/deploy-guardian/.claude-plugin/plugin.json +0 -8
  90. package/templates/claude-plugins-admin/deploy-guardian/commands/deploy.md +0 -554
  91. package/templates/claude-plugins-admin/frontend-agent/.claude-plugin/plugin.json +0 -8
  92. package/templates/claude-plugins-admin/frontend-agent/commands/frontend.md +0 -881
  93. package/templates/claude-plugins-admin/mcp-server-manager/.claude-plugin/plugin.json +0 -8
  94. package/templates/claude-plugins-admin/mcp-server-manager/commands/mcp.md +0 -85
  95. package/templates/claude-plugins-admin/memory-system-monitor/.claude-plugin/plugin.json +0 -8
  96. package/templates/claude-plugins-admin/memory-system-monitor/commands/memory-health.md +0 -569
  97. package/templates/claude-plugins-admin/qa-agent/.claude-plugin/plugin.json +0 -8
  98. package/templates/claude-plugins-admin/qa-agent/commands/qa.md +0 -863
  99. package/templates/claude-plugins-admin/tech-lead-agent/.claude-plugin/plugin.json +0 -8
  100. package/templates/claude-plugins-admin/tech-lead-agent/commands/lead.md +0 -732
  101. package/templates/commands/continue.md +0 -47
  102. package/templates/cursor-rules/ekkos-memory.md +0 -127
  103. package/templates/ekkos-manifest.json +0 -223
  104. package/templates/helpers/json-parse.cjs +0 -101
  105. package/templates/hooks-node/lib/state.js +0 -187
  106. package/templates/hooks-node/stop.js +0 -416
  107. package/templates/hooks-node/user-prompt-submit.js +0 -337
  108. package/templates/plan-template.md +0 -306
  109. package/templates/rules/00-hooks-contract.mdc +0 -89
  110. package/templates/rules/30-ekkos-core.mdc +0 -188
  111. package/templates/rules/31-ekkos-messages.mdc +0 -78
  112. package/templates/shared/hooks-enabled.json +0 -22
  113. package/templates/shared/session-words.json +0 -45
  114. package/templates/skills/ekkOS_Deep_Recall/Skill.md +0 -282
  115. package/templates/skills/ekkOS_Learn/Skill.md +0 -265
  116. package/templates/skills/ekkOS_Memory_First/Skill.md +0 -206
  117. package/templates/skills/ekkOS_Plan_Assist/Skill.md +0 -302
  118. package/templates/skills/ekkOS_Preferences/Skill.md +0 -247
  119. package/templates/skills/ekkOS_Reflect/Skill.md +0 -257
  120. package/templates/skills/ekkOS_Safety/Skill.md +0 -265
  121. package/templates/skills/ekkOS_Schema/Skill.md +0 -251
  122. package/templates/skills/ekkOS_Summary/Skill.md +0 -257
  123. package/templates/spec-template.md +0 -159
  124. package/templates/windsurf-rules/ekkos-memory.md +0 -127
  125. package/templates/windsurf-skills/README.md +0 -58
  126. package/templates/windsurf-skills/ekkos-continue/SKILL.md +0 -81
  127. package/templates/windsurf-skills/ekkos-golden-loop/SKILL.md +0 -225
  128. package/templates/windsurf-skills/ekkos-insights/SKILL.md +0 -138
  129. package/templates/windsurf-skills/ekkos-recall/SKILL.md +0 -96
  130. package/templates/windsurf-skills/ekkos-safety/SKILL.md +0 -89
  131. package/templates/windsurf-skills/ekkos-vault/SKILL.md +0 -86
@@ -1,251 +0,0 @@
1
- ---
2
- name: ekkOS_Schema
3
- description: Know the correct database field names. Activate when writing SQL queries, working with Supabase, using Prisma, accessing database tables, or when you need to reference column names. This skill prevents "column does not exist" errors by checking the indexed schema first.
4
- allowed-tools:
5
- - mcp__ekkos-memory__ekkOS_GetSchema
6
- - mcp__ekkos-memory__ekkOS_IndexSchema
7
- - mcp__ekkos-memory__ekkOS_Search
8
- - Read
9
- - Glob
10
- ---
11
-
12
- # ekkOS_Schema
13
-
14
- You are augmented with **ekkOS_ memory** - and you know the EXACT field names in this project's database.
15
-
16
- ## Why This Skill Exists
17
-
18
- Database schema mismatches are a common source of errors:
19
- - `column "userId" does not exist` (it's `user_id`)
20
- - `relation "Users" does not exist` (it's `users`)
21
- - Wrong type assumptions
22
-
23
- This skill ensures you use the CORRECT field names.
24
-
25
- ## When To Activate
26
-
27
- This skill should trigger when:
28
-
29
- | Trigger | Example |
30
- |---------|---------|
31
- | Writing SQL | `SELECT * FROM users WHERE...` |
32
- | Supabase queries | `.from('users').select('...')` |
33
- | Prisma operations | `prisma.user.findMany({...})` |
34
- | TypeScript DB types | `Database['public']['Tables']` |
35
- | Migration creation | `CREATE TABLE...` |
36
- | Any column reference | Mentioning a database field |
37
-
38
- ## Instructions
39
-
40
- ### Step 1: Identify the Table/Type
41
-
42
- Extract the table name from the context:
43
- - SQL: `SELECT ... FROM users` → `users`
44
- - Supabase: `.from('profiles')` → `profiles`
45
- - Prisma: `prisma.post.findMany` → `post`
46
-
47
- ### Step 2: Get the Schema
48
-
49
- ```
50
- ekkOS_GetSchema({
51
- table_name: "users"
52
- })
53
- ```
54
-
55
- Response:
56
- ```json
57
- {
58
- "table_name": "users",
59
- "columns": [
60
- {"name": "id", "type": "uuid", "nullable": false},
61
- {"name": "email", "type": "text", "nullable": false},
62
- {"name": "created_at", "type": "timestamptz", "nullable": false},
63
- {"name": "display_name", "type": "text", "nullable": true}
64
- ],
65
- "primary_key": "id",
66
- "foreign_keys": [...]
67
- }
68
- ```
69
-
70
- ### Step 3: Use Correct Names
71
-
72
- Now you know:
73
- - It's `display_name`, not `displayName`
74
- - It's `created_at`, not `createdAt`
75
- - `id` is UUID, not integer
76
-
77
- ### Step 4: Write Correct Query
78
-
79
- ```sql
80
- -- WRONG (would fail)
81
- SELECT displayName FROM Users WHERE createdAt > '2024-01-01'
82
-
83
- -- CORRECT (using schema)
84
- SELECT display_name FROM users WHERE created_at > '2024-01-01'
85
- ```
86
-
87
- ## First-Time Setup: Index the Schema
88
-
89
- If schema isn't indexed yet, index it first:
90
-
91
- ```
92
- ekkOS_IndexSchema({
93
- project_path: "/path/to/project",
94
- files: [
95
- {
96
- name: "packages/database-types/index.ts",
97
- content: "... file contents ..."
98
- }
99
- ]
100
- })
101
- ```
102
-
103
- This indexes Supabase types, Prisma schemas, and TypeScript interfaces.
104
-
105
- ## Example Scenarios
106
-
107
- ### Scenario 1: Supabase Query
108
- ```
109
- User: "Query all users who signed up this month"
110
-
111
- You: *Before writing query*
112
-
113
- ekkOS_GetSchema({ table_name: "users" })
114
-
115
- Response: columns include `created_at` (not `createdAt`)
116
-
117
- "Here's the query:
118
- ```typescript
119
- const { data } = await supabase
120
- .from('users')
121
- .select('id, email, display_name, created_at')
122
- .gte('created_at', startOfMonth)
123
- ```"
124
- ```
125
-
126
- ### Scenario 2: Prisma Operation
127
- ```
128
- User: "Find all posts with their authors"
129
-
130
- You: *Before writing*
131
-
132
- ekkOS_GetSchema({ table_name: "posts" })
133
- ekkOS_GetSchema({ table_name: "users" })
134
-
135
- Response: posts has `author_id` FK to users
136
-
137
- "Here's the Prisma query:
138
- ```typescript
139
- const posts = await prisma.post.findMany({
140
- include: {
141
- author: {
142
- select: {
143
- id: true,
144
- display_name: true
145
- }
146
- }
147
- }
148
- })
149
- ```"
150
- ```
151
-
152
- ### Scenario 3: Migration
153
- ```
154
- User: "Add a bio field to the profiles table"
155
-
156
- You: *Check existing schema*
157
-
158
- ekkOS_GetSchema({ table_name: "profiles" })
159
-
160
- Response: profiles has id, user_id, avatar_url, updated_at
161
-
162
- "Here's the migration:
163
- ```sql
164
- ALTER TABLE profiles
165
- ADD COLUMN bio TEXT;
166
- ```
167
-
168
- I confirmed the table is `profiles` (not `profile`)
169
- and existing columns use snake_case."
170
- ```
171
-
172
- ### Scenario 4: Schema Not Indexed
173
- ```
174
- User: "Query the orders table"
175
-
176
- You: ekkOS_GetSchema({ table_name: "orders" })
177
-
178
- Response: Schema not found
179
-
180
- "I don't have the orders schema indexed yet.
181
- Let me check the codebase for type definitions..."
182
-
183
- *Reads database types file*
184
-
185
- ekkOS_IndexSchema({
186
- project_path: "...",
187
- files: [{ name: "types/database.ts", content: "..." }]
188
- })
189
-
190
- "Schema indexed! The orders table has:
191
- - id (uuid)
192
- - user_id (uuid, FK to users)
193
- - total_amount (numeric)
194
- - status (text: pending/completed/cancelled)
195
- - created_at (timestamptz)"
196
- ```
197
-
198
- ## Common Schema Sources
199
-
200
- The skill can index from:
201
-
202
- | Source | Location |
203
- |--------|----------|
204
- | Supabase Types | `packages/database-types/index.ts` |
205
- | Prisma Schema | `prisma/schema.prisma` |
206
- | TypeScript Types | `types/database.ts` |
207
- | SQL Files | `supabase/migrations/*.sql` |
208
-
209
- ## Fallback: Read Files Directly
210
-
211
- If schema isn't indexed:
212
-
213
- 1. **Find type files:**
214
- ```
215
- Glob({ pattern: "**/*database*.ts" })
216
- Glob({ pattern: "**/schema.prisma" })
217
- ```
218
-
219
- 2. **Read and parse:**
220
- ```
221
- Read({ file_path: "packages/database-types/index.ts" })
222
- ```
223
-
224
- 3. **Index for future:**
225
- ```
226
- ekkOS_IndexSchema({ ... })
227
- ```
228
-
229
- ## Integration with Patterns
230
-
231
- If you've solved a schema issue before, it's a pattern:
232
-
233
- ```
234
- ekkOS_Search({
235
- query: "users table schema columns",
236
- sources: ["codebase", "patterns"]
237
- })
238
- ```
239
-
240
- ## Success Metrics
241
-
242
- You're using this skill correctly when:
243
- - ZERO "column does not exist" errors
244
- - You check schema BEFORE writing queries
245
- - You use snake_case vs camelCase correctly
246
- - Migrations reference existing columns correctly
247
- - Users trust your database code
248
-
249
- ---
250
-
251
- **Mantra**: About to write SQL? Check the schema first. Every time.
@@ -1,257 +0,0 @@
1
- ---
2
- name: ekkOS_Summary
3
- description: Show what ekkOS learned and did. Activate when the user asks "what did you learn", "show me my patterns", "ekkOS status", "memory summary", or wants to understand what the memory system captured. This skill provides transparency about memory operations.
4
- allowed-tools:
5
- - mcp__ekkos-memory__ekkOS_Summary
6
- - mcp__ekkos-memory__ekkOS_Stats
7
- - mcp__ekkos-memory__ekkOS_Search
8
- - mcp__ekkos-memory__ekkOS_Plans
9
- ---
10
-
11
- # ekkOS_Summary
12
-
13
- You are augmented with **ekkOS_ memory** - and you can show users exactly what the memory system has learned and done.
14
-
15
- ## Why This Skill Exists
16
-
17
- Transparency builds trust:
18
- - Users should know what's being remembered
19
- - Pattern counts and success rates matter
20
- - Session activity should be visible
21
-
22
- This skill provides insight into ekkOS operations.
23
-
24
- ## When To Activate
25
-
26
- This skill should trigger when:
27
-
28
- | Trigger | Example |
29
- |---------|---------|
30
- | "What did you learn?" | Wants to see forged patterns |
31
- | "Show my patterns" | Wants pattern list |
32
- | "ekkOS status" | System health check |
33
- | "Memory summary" | Overview request |
34
- | "What did ekkOS do?" | Activity review |
35
- | End of session | Natural summary point |
36
-
37
- ## Instructions
38
-
39
- ### Session Summary
40
-
41
- ```
42
- ekkOS_Summary({
43
- time_window_seconds: 300 // Last 5 minutes
44
- })
45
- ```
46
-
47
- Response:
48
- ```json
49
- {
50
- "session_activity": {
51
- "searches": 5,
52
- "patterns_retrieved": 12,
53
- "patterns_applied": 4,
54
- "patterns_forged": 2,
55
- "directives_created": 1
56
- },
57
- "recent_events": [
58
- {"type": "search", "query": "auth error", "results": 3},
59
- {"type": "forge", "title": "JWT clock tolerance fix"},
60
- {"type": "apply", "pattern": "Error handling middleware"}
61
- ]
62
- }
63
- ```
64
-
65
- ### Memory Statistics
66
-
67
- ```
68
- ekkOS_Stats({
69
- scope: "personal" // or "collective" or "both"
70
- })
71
- ```
72
-
73
- Response:
74
- ```json
75
- {
76
- "personal": {
77
- "patterns": 127,
78
- "directives": 23,
79
- "episodes": 489,
80
- "avg_success_rate": 0.82
81
- },
82
- "collective": {
83
- "patterns": 5420,
84
- "avg_success_rate": 0.78
85
- }
86
- }
87
- ```
88
-
89
- ## Example Scenarios
90
-
91
- ### Scenario 1: Session Summary
92
- ```
93
- User: "What did ekkOS do this session?"
94
-
95
- You: ekkOS_Summary({ time_window_seconds: 3600 })
96
-
97
- "🧠 ekkOS Session Summary (last hour):
98
-
99
- 📊 Activity:
100
- ├── Searches: 8 queries
101
- ├── Patterns retrieved: 15
102
- ├── Patterns applied: 6
103
- └── Patterns forged: 3
104
-
105
- ✨ New patterns created:
106
- 1. 'Fix CORS with credentials mode'
107
- 2. 'Supabase RLS policy syntax'
108
- 3. 'React useEffect cleanup pattern'
109
-
110
- 📋 Directives added:
111
- 1. [PREFER] Use arrow functions
112
-
113
- 🎯 Golden Loop compliance: 94%
114
-
115
- Your memory is growing!"
116
- ```
117
-
118
- ### Scenario 2: Overall Statistics
119
- ```
120
- User: "How's my ekkOS memory doing?"
121
-
122
- You: ekkOS_Stats({ scope: "both" })
123
-
124
- "🧠 ekkOS Memory Statistics:
125
-
126
- 📚 Your Personal Memory:
127
- ├── Patterns: 127 total
128
- ├── Success rate: 82%
129
- ├── Directives: 23 active
130
- ├── Episodes: 489 conversations
131
- └── Most used: 'Error handling' (45 applications)
132
-
133
- 🌐 Collective Memory:
134
- ├── Total patterns: 5,420
135
- ├── Your contributions: 127
136
- └── Top category: API Integration
137
-
138
- 📈 Growth:
139
- ├── This week: +12 patterns
140
- ├── This month: +47 patterns
141
- └── Trend: ↑ 15% more than last month
142
-
143
- You're in the top 10% of ekkOS contributors!"
144
- ```
145
-
146
- ### Scenario 3: What Did You Learn?
147
- ```
148
- User: "What patterns did you learn from our conversation?"
149
-
150
- You: ekkOS_Search({
151
- query: "session:" + session_id,
152
- sources: ["patterns"]
153
- })
154
-
155
- "🧠 Patterns learned this session:
156
-
157
- 1. **Fix timezone issues in date comparison**
158
- Problem: Dates compared without timezone normalization
159
- Solution: Always convert to UTC before comparison
160
- Confidence: 85%
161
-
162
- 2. **Supabase real-time subscription cleanup**
163
- Problem: Memory leak from unsubscribed channels
164
- Solution: Store subscription and call unsubscribe in useEffect cleanup
165
- Confidence: 90%
166
-
167
- 3. **Anti-pattern: Don't use .env in client code**
168
- Problem: Tried to read .env directly in React
169
- Solution: Use NEXT_PUBLIC_ prefix or server-side only
170
- Type: Anti-pattern (learned from mistake)
171
-
172
- These will help in future sessions!"
173
- ```
174
-
175
- ### Scenario 4: Plan Status
176
- ```
177
- User: "What am I working on?"
178
-
179
- You: ekkOS_Plans({ status: "in_progress" })
180
-
181
- ekkOS_Summary({ time_window_seconds: 86400 })
182
-
183
- "🧠 Current State:
184
-
185
- 📋 Active Plans:
186
- 1. **API Refactoring** [5/8 steps]
187
- Current: Creating service interfaces
188
- Next: Add dependency injection
189
-
190
- 2. **Auth System** [2/6 steps]
191
- Current: Implementing registration
192
- Blocked: Waiting for email service
193
-
194
- 📊 Today's Progress:
195
- ├── Completed 3 plan steps
196
- ├── Forged 2 new patterns
197
- └── Applied 8 existing patterns
198
-
199
- Resume API Refactoring?"
200
- ```
201
-
202
- ### Scenario 5: Memory Health Check
203
- ```
204
- User: "Is ekkOS working properly?"
205
-
206
- You: ekkOS_Stats({})
207
-
208
- "🧠 ekkOS Health Check:
209
-
210
- ✅ API Connection: Healthy
211
- ✅ Pattern Layer: 127 patterns indexed
212
- ✅ Directive Layer: 23 active rules
213
- ✅ Episode Layer: 489 conversations stored
214
- ✅ Context Guardian: Active
215
-
216
- 📊 Performance:
217
- ├── Average search time: 120ms
218
- ├── Pattern retrieval rate: 94%
219
- └── Golden Loop compliance: 91%
220
-
221
- ⚠️ Suggestions:
222
- ├── 5 patterns have <50% success rate
223
- └── Consider reviewing/updating these
224
-
225
- Overall: System healthy! 🟢"
226
- ```
227
-
228
- ## Display Formats
229
-
230
- ### Compact Summary
231
- ```
232
- 🧠 ekkOS: 127 patterns | 23 directives | 82% success rate
233
- ```
234
-
235
- ### Detailed Summary
236
- ```
237
- 🧠 ekkOS Memory Summary
238
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
239
- Patterns: 127 total, 82% success rate
240
- Directives: 23 active (12 MUST, 8 NEVER, 3 PREFER)
241
- Episodes: 489 conversations indexed
242
- Plans: 2 in progress, 15 completed
243
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
244
- ```
245
-
246
- ## Success Metrics
247
-
248
- You're using this skill correctly when:
249
- - Users understand what ekkOS is doing
250
- - Statistics are presented clearly
251
- - Session activity is transparent
252
- - Users trust the memory system
253
- - Summaries are useful, not overwhelming
254
-
255
- ---
256
-
257
- **Mantra**: Show the work. Users should see what ekkOS learns.
@@ -1,159 +0,0 @@
1
- # Feature Specification: [Feature Name]
2
-
3
- ## Overview
4
- **Brief description of the feature and its purpose in the Echo ecosystem.**
5
-
6
- ## User Stories
7
-
8
- ### Primary User Story
9
- **As a [user type], I want [functionality] so that [benefit/value].**
10
-
11
- ### Additional User Stories
12
- - **As a [user type], I want [functionality] so that [benefit/value].**
13
- - **As a [user type], I want [functionality] so that [benefit/value].**
14
-
15
- ## Functional Requirements
16
-
17
- ### Core Functionality
18
- 1. **Requirement 1**: Description of what the system must do
19
- 2. **Requirement 2**: Description of what the system must do
20
- 3. **Requirement 3**: Description of what the system must do
21
-
22
- ### AI Integration Requirements
23
- 1. **AI Provider**: Which AI provider(s) will be used
24
- 2. **Processing Pipeline**: How content flows through AI systems
25
- 3. **Fallback Strategy**: What happens when AI fails
26
- 4. **Cost Considerations**: Expected API usage and costs
27
-
28
- ### Data Requirements
29
- 1. **Input Data**: What data is required
30
- 2. **Output Data**: What data is produced
31
- 3. **Storage Requirements**: How data is persisted
32
- 4. **Privacy Considerations**: Data handling and protection
33
-
34
- ## Technical Requirements
35
-
36
- ### API Design
37
- - **Endpoints**: List of required API endpoints
38
- - **Request/Response**: Data structures and validation
39
- - **Authentication**: Security requirements
40
- - **Rate Limiting**: Performance considerations
41
-
42
- ### Database Schema
43
- - **Tables**: New or modified database tables
44
- - **Indexes**: Performance optimization requirements
45
- - **Migrations**: Database change requirements
46
-
47
- ### Frontend Components
48
- - **UI Components**: New or modified React components
49
- - **State Management**: Data flow and state handling
50
- - **User Experience**: Interaction patterns and flows
51
-
52
- ## Non-Functional Requirements
53
-
54
- ### Performance
55
- - **Response Time**: Expected API response times
56
- - **Throughput**: Expected request volume
57
- - **Scalability**: Growth and scaling considerations
58
-
59
- ### Reliability
60
- - **Uptime**: Availability requirements
61
- - **Error Handling**: Error scenarios and recovery
62
- - **Monitoring**: Observability and alerting
63
-
64
- ### Security
65
- - **Authentication**: User verification requirements
66
- - **Authorization**: Access control requirements
67
- - **Data Protection**: Privacy and security measures
68
-
69
- ## Acceptance Criteria
70
-
71
- ### Functional Acceptance
72
- - [ ] **Criterion 1**: Specific, testable requirement
73
- - [ ] **Criterion 2**: Specific, testable requirement
74
- - [ ] **Criterion 3**: Specific, testable requirement
75
-
76
- ### Technical Acceptance
77
- - [ ] **Criterion 1**: Performance or technical requirement
78
- - [ ] **Criterion 2**: Performance or technical requirement
79
- - [ ] **Criterion 3**: Performance or technical requirement
80
-
81
- ### AI Acceptance
82
- - [ ] **Criterion 1**: AI accuracy or quality requirement
83
- - [ ] **Criterion 2**: AI performance requirement
84
- - [ ] **Criterion 3**: AI reliability requirement
85
-
86
- ## Dependencies
87
-
88
- ### Internal Dependencies
89
- - **Feature A**: Required for this feature to work
90
- - **Feature B**: Required for this feature to work
91
-
92
- ### External Dependencies
93
- - **API Service**: External service requirements
94
- - **AI Provider**: AI service requirements
95
- - **Third-party Library**: Library requirements
96
-
97
- ## Risks and Mitigations
98
-
99
- ### Technical Risks
100
- - **Risk 1**: Description and mitigation strategy
101
- - **Risk 2**: Description and mitigation strategy
102
-
103
- ### AI Risks
104
- - **Risk 1**: AI accuracy or availability risk
105
- - **Risk 2**: AI cost or performance risk
106
-
107
- ### Business Risks
108
- - **Risk 1**: User adoption or satisfaction risk
109
- - **Risk 2**: Competitive or market risk
110
-
111
- ## Implementation Plan
112
-
113
- ### Phase 1: Foundation
114
- - [ ] **Task 1**: Description and estimated effort
115
- - [ ] **Task 2**: Description and estimated effort
116
-
117
- ### Phase 2: Core Implementation
118
- - [ ] **Task 1**: Description and estimated effort
119
- - [ ] **Task 2**: Description and estimated effort
120
-
121
- ### Phase 3: Integration and Testing
122
- - [ ] **Task 1**: Description and estimated effort
123
- - [ ] **Task 2**: Description and estimated effort
124
-
125
- ## Success Metrics
126
-
127
- ### User Metrics
128
- - **Metric 1**: How success will be measured
129
- - **Metric 2**: How success will be measured
130
-
131
- ### Technical Metrics
132
- - **Metric 1**: Performance or reliability metric
133
- - **Metric 2**: Performance or reliability metric
134
-
135
- ### AI Metrics
136
- - **Metric 1**: AI accuracy or quality metric
137
- - **Metric 2**: AI cost or efficiency metric
138
-
139
- ## Review and Acceptance Checklist
140
-
141
- ### Specification Review
142
- - [ ] **Requirement Completeness**: All requirements clearly defined
143
- - [ ] **Technical Feasibility**: Implementation approach validated
144
- - [ ] **AI Integration**: AI capabilities and limitations understood
145
- - [ ] **User Experience**: UX flow and interactions defined
146
-
147
- ### Technical Review
148
- - [ ] **Architecture Alignment**: Fits with existing system architecture
149
- - [ ] **Performance Impact**: Performance implications understood
150
- - [ ] **Security Review**: Security implications addressed
151
- - [ ] **Scalability**: Growth and scaling considerations addressed
152
-
153
- ### Business Review
154
- - [ ] **User Value**: Clear value proposition for users
155
- - [ ] **Resource Requirements**: Development effort and costs estimated
156
- - [ ] **Timeline**: Realistic implementation timeline
157
- - [ ] **Success Criteria**: Clear definition of success
158
-
159
-