@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.
- package/dist/capture/jsonl-rewriter.d.ts +1 -1
- package/dist/capture/jsonl-rewriter.js +3 -3
- package/dist/capture/transcript-repair.d.ts +2 -2
- package/dist/capture/transcript-repair.js +2 -2
- package/dist/commands/claw.d.ts +13 -0
- package/dist/commands/claw.js +253 -0
- package/dist/commands/dashboard.js +742 -118
- package/dist/commands/doctor.d.ts +3 -3
- package/dist/commands/doctor.js +6 -79
- package/dist/commands/gemini.d.ts +19 -0
- package/dist/commands/gemini.js +193 -0
- package/dist/commands/init.d.ts +1 -0
- package/dist/commands/init.js +56 -41
- package/dist/commands/run.d.ts +0 -1
- package/dist/commands/run.js +288 -263
- package/dist/commands/scan.d.ts +21 -0
- package/dist/commands/scan.js +386 -0
- package/dist/commands/status.d.ts +4 -1
- package/dist/commands/status.js +165 -27
- package/dist/commands/swarm-dashboard.js +156 -28
- package/dist/commands/swarm.d.ts +1 -1
- package/dist/commands/swarm.js +1 -1
- package/dist/commands/test-claude.d.ts +2 -2
- package/dist/commands/test-claude.js +3 -3
- package/dist/deploy/index.d.ts +0 -2
- package/dist/deploy/index.js +0 -2
- package/dist/deploy/settings.d.ts +6 -5
- package/dist/deploy/settings.js +64 -16
- package/dist/deploy/skills.js +1 -2
- package/dist/index.js +86 -96
- package/dist/lib/usage-parser.d.ts +1 -1
- package/dist/lib/usage-parser.js +9 -6
- package/dist/local/index.d.ts +14 -0
- package/dist/local/index.js +28 -0
- package/dist/local/local-embeddings.d.ts +49 -0
- package/dist/local/local-embeddings.js +232 -0
- package/dist/local/offline-fallback.d.ts +44 -0
- package/dist/local/offline-fallback.js +159 -0
- package/dist/local/sqlite-store.d.ts +126 -0
- package/dist/local/sqlite-store.js +393 -0
- package/dist/local/sync-engine.d.ts +42 -0
- package/dist/local/sync-engine.js +223 -0
- package/dist/utils/platform.d.ts +5 -1
- package/dist/utils/platform.js +24 -4
- package/dist/utils/proxy-url.d.ts +21 -0
- package/dist/utils/proxy-url.js +34 -0
- package/dist/utils/state.d.ts +1 -1
- package/dist/utils/state.js +11 -3
- package/dist/utils/templates.js +1 -1
- package/package.json +11 -4
- package/templates/CLAUDE.md +49 -107
- package/dist/agent/daemon.d.ts +0 -130
- package/dist/agent/daemon.js +0 -606
- package/dist/agent/health-check.d.ts +0 -35
- package/dist/agent/health-check.js +0 -243
- package/dist/agent/pty-runner.d.ts +0 -53
- package/dist/agent/pty-runner.js +0 -190
- package/dist/commands/agent.d.ts +0 -50
- package/dist/commands/agent.js +0 -544
- package/dist/commands/setup-remote.d.ts +0 -20
- package/dist/commands/setup-remote.js +0 -582
- package/dist/utils/verify-remote-terminal.d.ts +0 -10
- package/dist/utils/verify-remote-terminal.js +0 -415
- package/templates/README.md +0 -378
- package/templates/claude-plugins/PHASE2_COMPLETION.md +0 -346
- package/templates/claude-plugins/PLUGIN_PROPOSALS.md +0 -1776
- package/templates/claude-plugins/README.md +0 -587
- package/templates/claude-plugins/agents/code-reviewer.json +0 -14
- package/templates/claude-plugins/agents/debug-detective.json +0 -15
- package/templates/claude-plugins/agents/git-companion.json +0 -14
- package/templates/claude-plugins/blog-manager/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins/blog-manager/commands/blog.md +0 -691
- package/templates/claude-plugins/golden-loop-monitor/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins/golden-loop-monitor/commands/loop-status.md +0 -434
- package/templates/claude-plugins/learning-tracker/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins/learning-tracker/commands/my-patterns.md +0 -282
- package/templates/claude-plugins/memory-lens/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins/memory-lens/commands/memory-search.md +0 -181
- package/templates/claude-plugins/pattern-coach/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins/pattern-coach/commands/forge.md +0 -365
- package/templates/claude-plugins/project-schema-validator/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins/project-schema-validator/commands/validate-schema.md +0 -582
- package/templates/claude-plugins-admin/AGENT_TEAM_PROPOSALS.md +0 -819
- package/templates/claude-plugins-admin/README.md +0 -446
- package/templates/claude-plugins-admin/autonomous-admin-agent/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins-admin/autonomous-admin-agent/commands/agent.md +0 -595
- package/templates/claude-plugins-admin/backend-agent/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins-admin/backend-agent/commands/backend.md +0 -798
- package/templates/claude-plugins-admin/deploy-guardian/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins-admin/deploy-guardian/commands/deploy.md +0 -554
- package/templates/claude-plugins-admin/frontend-agent/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins-admin/frontend-agent/commands/frontend.md +0 -881
- package/templates/claude-plugins-admin/mcp-server-manager/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins-admin/mcp-server-manager/commands/mcp.md +0 -85
- package/templates/claude-plugins-admin/memory-system-monitor/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins-admin/memory-system-monitor/commands/memory-health.md +0 -569
- package/templates/claude-plugins-admin/qa-agent/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins-admin/qa-agent/commands/qa.md +0 -863
- package/templates/claude-plugins-admin/tech-lead-agent/.claude-plugin/plugin.json +0 -8
- package/templates/claude-plugins-admin/tech-lead-agent/commands/lead.md +0 -732
- package/templates/commands/continue.md +0 -47
- package/templates/cursor-rules/ekkos-memory.md +0 -127
- package/templates/ekkos-manifest.json +0 -223
- package/templates/helpers/json-parse.cjs +0 -101
- package/templates/hooks-node/lib/state.js +0 -187
- package/templates/hooks-node/stop.js +0 -416
- package/templates/hooks-node/user-prompt-submit.js +0 -337
- package/templates/plan-template.md +0 -306
- package/templates/rules/00-hooks-contract.mdc +0 -89
- package/templates/rules/30-ekkos-core.mdc +0 -188
- package/templates/rules/31-ekkos-messages.mdc +0 -78
- package/templates/shared/hooks-enabled.json +0 -22
- package/templates/shared/session-words.json +0 -45
- package/templates/skills/ekkOS_Deep_Recall/Skill.md +0 -282
- package/templates/skills/ekkOS_Learn/Skill.md +0 -265
- package/templates/skills/ekkOS_Memory_First/Skill.md +0 -206
- package/templates/skills/ekkOS_Plan_Assist/Skill.md +0 -302
- package/templates/skills/ekkOS_Preferences/Skill.md +0 -247
- package/templates/skills/ekkOS_Reflect/Skill.md +0 -257
- package/templates/skills/ekkOS_Safety/Skill.md +0 -265
- package/templates/skills/ekkOS_Schema/Skill.md +0 -251
- package/templates/skills/ekkOS_Summary/Skill.md +0 -257
- package/templates/spec-template.md +0 -159
- package/templates/windsurf-rules/ekkos-memory.md +0 -127
- package/templates/windsurf-skills/README.md +0 -58
- package/templates/windsurf-skills/ekkos-continue/SKILL.md +0 -81
- package/templates/windsurf-skills/ekkos-golden-loop/SKILL.md +0 -225
- package/templates/windsurf-skills/ekkos-insights/SKILL.md +0 -138
- package/templates/windsurf-skills/ekkos-recall/SKILL.md +0 -96
- package/templates/windsurf-skills/ekkos-safety/SKILL.md +0 -89
- 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
|
-
|