@ekkos/cli 1.3.2 → 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 (119) 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 +617 -83
  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.js +2 -25
  13. package/dist/commands/run.d.ts +0 -1
  14. package/dist/commands/run.js +147 -241
  15. package/dist/commands/scan.d.ts +21 -0
  16. package/dist/commands/scan.js +386 -0
  17. package/dist/commands/swarm-dashboard.js +156 -28
  18. package/dist/commands/swarm.d.ts +1 -1
  19. package/dist/commands/swarm.js +1 -1
  20. package/dist/commands/test-claude.d.ts +2 -2
  21. package/dist/commands/test-claude.js +3 -3
  22. package/dist/deploy/index.d.ts +0 -2
  23. package/dist/deploy/index.js +0 -2
  24. package/dist/deploy/settings.d.ts +2 -2
  25. package/dist/deploy/settings.js +42 -4
  26. package/dist/deploy/skills.js +1 -2
  27. package/dist/index.js +79 -19
  28. package/dist/lib/usage-parser.js +4 -3
  29. package/dist/utils/proxy-url.d.ts +12 -1
  30. package/dist/utils/proxy-url.js +16 -1
  31. package/dist/utils/templates.js +1 -1
  32. package/package.json +4 -6
  33. package/templates/CLAUDE.md +49 -107
  34. package/dist/agent/daemon.d.ts +0 -130
  35. package/dist/agent/daemon.js +0 -606
  36. package/dist/agent/health-check.d.ts +0 -35
  37. package/dist/agent/health-check.js +0 -243
  38. package/dist/agent/pty-runner.d.ts +0 -53
  39. package/dist/agent/pty-runner.js +0 -190
  40. package/dist/commands/agent.d.ts +0 -50
  41. package/dist/commands/agent.js +0 -544
  42. package/dist/commands/setup-remote.d.ts +0 -20
  43. package/dist/commands/setup-remote.js +0 -582
  44. package/dist/commands/synk.d.ts +0 -7
  45. package/dist/commands/synk.js +0 -339
  46. package/dist/synk/api.d.ts +0 -22
  47. package/dist/synk/api.js +0 -133
  48. package/dist/synk/auth.d.ts +0 -7
  49. package/dist/synk/auth.js +0 -30
  50. package/dist/synk/config.d.ts +0 -18
  51. package/dist/synk/config.js +0 -37
  52. package/dist/synk/daemon/control-client.d.ts +0 -11
  53. package/dist/synk/daemon/control-client.js +0 -101
  54. package/dist/synk/daemon/control-server.d.ts +0 -24
  55. package/dist/synk/daemon/control-server.js +0 -91
  56. package/dist/synk/daemon/run.d.ts +0 -14
  57. package/dist/synk/daemon/run.js +0 -338
  58. package/dist/synk/encryption.d.ts +0 -17
  59. package/dist/synk/encryption.js +0 -133
  60. package/dist/synk/index.d.ts +0 -13
  61. package/dist/synk/index.js +0 -36
  62. package/dist/synk/machine-client.d.ts +0 -42
  63. package/dist/synk/machine-client.js +0 -218
  64. package/dist/synk/persistence.d.ts +0 -51
  65. package/dist/synk/persistence.js +0 -211
  66. package/dist/synk/qr.d.ts +0 -5
  67. package/dist/synk/qr.js +0 -33
  68. package/dist/synk/session-bridge.d.ts +0 -58
  69. package/dist/synk/session-bridge.js +0 -171
  70. package/dist/synk/session-client.d.ts +0 -46
  71. package/dist/synk/session-client.js +0 -240
  72. package/dist/synk/types.d.ts +0 -574
  73. package/dist/synk/types.js +0 -74
  74. package/dist/utils/verify-remote-terminal.d.ts +0 -10
  75. package/dist/utils/verify-remote-terminal.js +0 -415
  76. package/templates/README.md +0 -378
  77. package/templates/claude-plugins/PHASE2_COMPLETION.md +0 -346
  78. package/templates/claude-plugins/PLUGIN_PROPOSALS.md +0 -1776
  79. package/templates/claude-plugins/README.md +0 -587
  80. package/templates/claude-plugins/agents/code-reviewer.json +0 -14
  81. package/templates/claude-plugins/agents/debug-detective.json +0 -15
  82. package/templates/claude-plugins/agents/git-companion.json +0 -14
  83. package/templates/claude-plugins/blog-manager/.claude-plugin/plugin.json +0 -8
  84. package/templates/claude-plugins/blog-manager/commands/blog.md +0 -691
  85. package/templates/claude-plugins/golden-loop-monitor/.claude-plugin/plugin.json +0 -8
  86. package/templates/claude-plugins/golden-loop-monitor/commands/loop-status.md +0 -434
  87. package/templates/claude-plugins/learning-tracker/.claude-plugin/plugin.json +0 -8
  88. package/templates/claude-plugins/learning-tracker/commands/my-patterns.md +0 -282
  89. package/templates/claude-plugins/memory-lens/.claude-plugin/plugin.json +0 -8
  90. package/templates/claude-plugins/memory-lens/commands/memory-search.md +0 -181
  91. package/templates/claude-plugins/pattern-coach/.claude-plugin/plugin.json +0 -8
  92. package/templates/claude-plugins/pattern-coach/commands/forge.md +0 -365
  93. package/templates/claude-plugins/project-schema-validator/.claude-plugin/plugin.json +0 -8
  94. package/templates/claude-plugins/project-schema-validator/commands/validate-schema.md +0 -582
  95. package/templates/commands/continue.md +0 -47
  96. package/templates/cursor-rules/ekkos-memory.md +0 -127
  97. package/templates/ekkos-manifest.json +0 -223
  98. package/templates/helpers/json-parse.cjs +0 -101
  99. package/templates/plan-template.md +0 -306
  100. package/templates/shared/hooks-enabled.json +0 -22
  101. package/templates/shared/session-words.json +0 -45
  102. package/templates/skills/ekkOS_Deep_Recall/Skill.md +0 -282
  103. package/templates/skills/ekkOS_Learn/Skill.md +0 -265
  104. package/templates/skills/ekkOS_Memory_First/Skill.md +0 -206
  105. package/templates/skills/ekkOS_Plan_Assist/Skill.md +0 -302
  106. package/templates/skills/ekkOS_Preferences/Skill.md +0 -247
  107. package/templates/skills/ekkOS_Reflect/Skill.md +0 -257
  108. package/templates/skills/ekkOS_Safety/Skill.md +0 -265
  109. package/templates/skills/ekkOS_Schema/Skill.md +0 -251
  110. package/templates/skills/ekkOS_Summary/Skill.md +0 -257
  111. package/templates/spec-template.md +0 -159
  112. package/templates/windsurf-rules/ekkos-memory.md +0 -127
  113. package/templates/windsurf-skills/README.md +0 -58
  114. package/templates/windsurf-skills/ekkos-continue/SKILL.md +0 -81
  115. package/templates/windsurf-skills/ekkos-golden-loop/SKILL.md +0 -225
  116. package/templates/windsurf-skills/ekkos-insights/SKILL.md +0 -138
  117. package/templates/windsurf-skills/ekkos-recall/SKILL.md +0 -96
  118. package/templates/windsurf-skills/ekkos-safety/SKILL.md +0 -89
  119. package/templates/windsurf-skills/ekkos-vault/SKILL.md +0 -86
@@ -1,257 +0,0 @@
1
- ---
2
- name: ekkOS_Reflect
3
- description: Analyze response quality and learn from it. Activate after completing complex tasks, when the user provides feedback on your response, when you could have done something better, or when you want to improve pattern quality. This skill helps the memory system get smarter by evaluating what worked and what didn't.
4
- allowed-tools:
5
- - mcp__ekkos-memory__ekkOS_Reflect
6
- - mcp__ekkos-memory__ekkOS_Outcome
7
- - mcp__ekkos-memory__ekkOS_Forge
8
- - mcp__ekkos-memory__ekkOS_Search
9
- ---
10
-
11
- # ekkOS_Reflect
12
-
13
- You are augmented with **ekkOS_ memory** - and you can analyze your own responses to improve future performance.
14
-
15
- ## Why This Skill Exists
16
-
17
- The memory system only improves if we close the feedback loop:
18
- - Did that pattern actually help?
19
- - Could the response have been better?
20
- - What should be remembered for next time?
21
-
22
- This skill enables self-improvement.
23
-
24
- ## When To Activate
25
-
26
- This skill should trigger when:
27
-
28
- | Trigger | Example |
29
- |---------|---------|
30
- | Complex task completed | Finished multi-step implementation |
31
- | User provides feedback | "That's not quite right", "Perfect!" |
32
- | You sense improvement opportunity | "I could have done this better" |
33
- | Pattern was applied | Need to record if it worked |
34
- | User corrects you | Learn from the correction |
35
- | After difficult debugging | What was the key insight? |
36
-
37
- ## Instructions
38
-
39
- ### Step 1: Analyze the Response
40
-
41
- ```
42
- ekkOS_Reflect({
43
- user_query: "Original user question",
44
- response: "Your complete response",
45
- context: {
46
- patterns_used: 3,
47
- session_id: "...",
48
- model: "claude-opus-4-5"
49
- }
50
- })
51
- ```
52
-
53
- Response:
54
- ```json
55
- {
56
- "quality_score": 8.5,
57
- "improvement_opportunities": [
58
- "Could have included error handling example",
59
- "Solution was correct but verbose"
60
- ],
61
- "pattern_suggestions": [
62
- {
63
- "title": "Concise error handling patterns",
64
- "reason": "Response could be more concise"
65
- }
66
- ],
67
- "positive_aspects": [
68
- "Correct solution",
69
- "Good explanation of trade-offs"
70
- ]
71
- }
72
- ```
73
-
74
- ### Step 2: Record Outcomes
75
-
76
- For each pattern that was applied:
77
-
78
- ```
79
- ekkOS_Outcome({
80
- success: true, // or false
81
- model_used: "claude-opus-4-5"
82
- })
83
- ```
84
-
85
- This updates the pattern's success rate.
86
-
87
- ### Step 3: Forge Improvements
88
-
89
- If reflection reveals a better approach:
90
-
91
- ```
92
- ekkOS_Forge({
93
- title: "Concise error handling in async functions",
94
- problem: "Error handling code is often verbose and repetitive",
95
- solution: "Use wrapper function: const safe = (fn) => async (...args) => { try { return await fn(...args); } catch (e) { handleError(e); } }",
96
- tags: ["improvement", "reflection", "error-handling"]
97
- })
98
- ```
99
-
100
- ## Example Scenarios
101
-
102
- ### Scenario 1: User Feedback - Positive
103
- ```
104
- User: "Perfect, that's exactly what I needed!"
105
-
106
- You: *Reflect on what made it good*
107
-
108
- ekkOS_Outcome({ success: true })
109
-
110
- ekkOS_Reflect({
111
- response: "...",
112
- user_query: "..."
113
- })
114
-
115
- Analysis: Pattern #auth-jwt-123 was applied, user confirmed success.
116
-
117
- "Glad it helped! I've recorded that this approach works well.
118
- It'll be even faster to help with similar issues next time."
119
- ```
120
-
121
- ### Scenario 2: User Feedback - Needs Improvement
122
- ```
123
- User: "This works but it's way too complicated"
124
-
125
- You: *Reflect on the complexity issue*
126
-
127
- ekkOS_Outcome({ success: false }) // Partially failed
128
-
129
- ekkOS_Reflect({
130
- response: "...",
131
- user_query: "..."
132
- })
133
-
134
- Analysis: Solution was correct but overly complex.
135
-
136
- "You're right, let me simplify:
137
-
138
- [Simpler solution]
139
-
140
- I've noted that simpler solutions are preferred.
141
-
142
- ekkOS_Forge({
143
- title: 'Prefer simple solutions over comprehensive ones',
144
- problem: 'Tendency to over-engineer solutions',
145
- solution: 'Start with minimal implementation, add complexity only when needed',
146
- tags: ['meta', 'style', 'simplicity']
147
- })
148
-
149
- This preference is now saved."
150
- ```
151
-
152
- ### Scenario 3: Post-Task Reflection
153
- ```
154
- *After completing a complex debugging session*
155
-
156
- You: "Let me reflect on this debugging session...
157
-
158
- ekkOS_Reflect({
159
- response: 'Full debugging process and solution',
160
- user_query: 'Original bug report'
161
- })
162
-
163
- 📊 Session Analysis:
164
-
165
- ✅ What worked:
166
- - Systematic elimination of causes
167
- - Using git bisect to find regression
168
- - Checking logs before guessing
169
-
170
- ⚠️ Could improve:
171
- - Took 3 attempts before checking logs
172
- - Should have reproduced issue first
173
-
174
- 💡 Key insight to remember:
175
- 'Always reproduce the bug in isolation first'
176
-
177
- ekkOS_Forge({
178
- title: 'Reproduce bug before debugging',
179
- problem: 'Jumping into debugging without reproduction wastes time',
180
- solution: 'First step: create minimal reproduction case',
181
- tags: ['debugging', 'methodology', 'reflection']
182
- })
183
-
184
- This insight is now saved for future debugging sessions."
185
- ```
186
-
187
- ### Scenario 4: Pattern Quality Check
188
- ```
189
- *After applying a pattern that didn't work*
190
-
191
- You: *Pattern #db-query-123 was applied but query failed*
192
-
193
- ekkOS_Outcome({ success: false })
194
-
195
- "That pattern didn't work for this case. Let me update it...
196
-
197
- ekkOS_Search({
198
- query: 'db-query-123',
199
- sources: ['patterns']
200
- })
201
-
202
- Found: 'Use LIMIT for pagination'
203
- Current success rate: 85%
204
-
205
- The pattern is generally good but doesn't handle
206
- offset-based pagination with large tables.
207
-
208
- ekkOS_Forge({
209
- title: 'Use cursor-based pagination for large tables',
210
- problem: 'OFFSET pagination slows down on large datasets',
211
- solution: 'Use WHERE id > last_id ORDER BY id LIMIT n',
212
- works_when: ['table > 100k rows', 'pagination needed'],
213
- anti_patterns: ['Using OFFSET with large datasets']
214
- })
215
-
216
- Added a more specific pattern for this case."
217
- ```
218
-
219
- ## Reflection Questions
220
-
221
- Ask yourself after responses:
222
-
223
- 1. **Did the applied patterns help?**
224
- - Yes → `ekkOS_Outcome({ success: true })`
225
- - No → `ekkOS_Outcome({ success: false })`
226
-
227
- 2. **Was the response quality good?**
228
- - Run `ekkOS_Reflect` to analyze
229
-
230
- 3. **What would I do differently?**
231
- - Forge the improvement as a new pattern
232
-
233
- 4. **Did I learn something new?**
234
- - Forge it immediately
235
-
236
- ## Integration with Learning
237
-
238
- Reflection feeds back into the Golden Loop:
239
-
240
- ```
241
- Response → Reflect → Improve Patterns → Better Future Responses
242
- ↑ ↓
243
- └────────────────────────────────────────────┘
244
- ```
245
-
246
- ## Success Metrics
247
-
248
- You're using this skill correctly when:
249
- - Pattern success rates are accurate
250
- - Improvements are forged after corrections
251
- - Response quality increases over time
252
- - You proactively reflect, not just when asked
253
- - The memory system gets demonstrably smarter
254
-
255
- ---
256
-
257
- **Mantra**: Every response is a learning opportunity. Reflect. Record. Improve.
@@ -1,265 +0,0 @@
1
- ---
2
- name: ekkOS_Safety
3
- description: Check for conflicts before dangerous operations. Activate before deleting files, dropping tables, deploying to production, pushing to main, running destructive commands, modifying configuration files, or any irreversible action. This skill prevents accidents by checking user directives and patterns first.
4
- allowed-tools:
5
- - mcp__ekkos-memory__ekkOS_Conflict
6
- - mcp__ekkos-memory__ekkOS_Search
7
- ---
8
-
9
- # ekkOS_Safety
10
-
11
- You are augmented with **ekkOS_ memory** - and your job is to PREVENT accidents by checking before dangerous operations.
12
-
13
- ## Why This Skill Exists
14
-
15
- Users have directives (MUST/NEVER rules) and learned anti-patterns. Before any destructive action, you MUST check if it conflicts with these rules.
16
-
17
- **This skill can BLOCK actions** that violate user directives.
18
-
19
- ## When To Activate
20
-
21
- This skill should trigger BEFORE:
22
-
23
- | Action Category | Examples |
24
- |-----------------|----------|
25
- | **File deletion** | `rm -rf`, `unlink`, delete files/folders |
26
- | **Database destruction** | `DROP TABLE`, `DELETE FROM`, truncate |
27
- | **Deployment** | `deploy`, `push to prod`, release |
28
- | **Branch operations** | `push to main`, `force push`, `rebase main` |
29
- | **Config changes** | Modify `.env`, change secrets, update config |
30
- | **Package operations** | `npm publish`, release new version |
31
- | **Infrastructure** | Destroy resources, scale down, terminate |
32
-
33
- ## Instructions
34
-
35
- ### Step 1: Detect Dangerous Intent
36
-
37
- Before executing, identify if the action is:
38
- - Irreversible (can't undo)
39
- - Destructive (deletes/modifies data)
40
- - Production-affecting (impacts live systems)
41
- - Security-sensitive (credentials, permissions)
42
-
43
- ### Step 2: Check for Conflicts
44
-
45
- ```
46
- ekkOS_Conflict({
47
- proposed_action: "delete all files in /tmp",
48
- scope: "deployment", // Optional: narrow the check
49
- include_patterns: true // Check anti-patterns too
50
- })
51
- ```
52
-
53
- ### Step 3: Evaluate Response
54
-
55
- The conflict check returns:
56
- ```json
57
- {
58
- "has_conflicts": true,
59
- "blocking_directives": [
60
- {"type": "NEVER", "rule": "Delete without backup"}
61
- ],
62
- "warning_patterns": [
63
- {"title": "Always backup before delete"}
64
- ],
65
- "recommendation": "Create backup first"
66
- }
67
- ```
68
-
69
- ### Step 4: Act on Conflicts
70
-
71
- **If blocking conflicts found:**
72
- ```
73
- ⛔ BLOCKED: This action conflicts with your directive:
74
- [NEVER] Delete without backup
75
-
76
- Would you like to:
77
- 1. Create a backup first
78
- 2. Override this directive (requires confirmation)
79
- 3. Cancel the operation
80
- ```
81
-
82
- **If warnings found (not blocking):**
83
- ```
84
- ⚠️ WARNING: This action has potential issues:
85
- - Pattern suggests: "Always backup before delete"
86
-
87
- Proceeding with caution. Do you want to continue?
88
- ```
89
-
90
- **If no conflicts:**
91
- ```
92
- ✅ Safety check passed. No conflicts with your directives or patterns.
93
- ```
94
-
95
- ## Example Scenarios
96
-
97
- ### Scenario 1: Delete Operation
98
- ```
99
- User: "Delete all the old log files"
100
-
101
- You: *Before executing*
102
-
103
- ekkOS_Conflict({
104
- proposed_action: "delete log files in /var/log/old",
105
- scope: "files"
106
- })
107
-
108
- Response: No conflicts found.
109
-
110
- "✅ Safety check passed. Proceeding to delete old log files..."
111
- ```
112
-
113
- ### Scenario 2: Blocked by Directive
114
- ```
115
- User: "Push this directly to main"
116
-
117
- You: *Before executing*
118
-
119
- ekkOS_Conflict({
120
- proposed_action: "git push to main branch",
121
- scope: "git"
122
- })
123
-
124
- Response:
125
- {
126
- "has_conflicts": true,
127
- "blocking_directives": [
128
- {"type": "NEVER", "rule": "Push directly to main"}
129
- ]
130
- }
131
-
132
- "⛔ BLOCKED: This conflicts with your directive:
133
- [NEVER] Push directly to main
134
-
135
- You previously set this rule. Options:
136
- 1. Create a feature branch and PR instead
137
- 2. Override (type 'override push to main')
138
- 3. Cancel"
139
- ```
140
-
141
- ### Scenario 3: Warning from Pattern
142
- ```
143
- User: "Drop the users table"
144
-
145
- You: *Before executing*
146
-
147
- ekkOS_Conflict({
148
- proposed_action: "DROP TABLE users",
149
- scope: "database"
150
- })
151
-
152
- Response:
153
- {
154
- "has_conflicts": false,
155
- "warning_patterns": [
156
- {"title": "Always backup tables before DROP"}
157
- ]
158
- }
159
-
160
- "⚠️ WARNING: A pattern suggests backing up first.
161
-
162
- Pattern: 'Always backup tables before DROP'
163
-
164
- Should I:
165
- 1. Create a backup first, then drop
166
- 2. Proceed without backup
167
- 3. Cancel"
168
- ```
169
-
170
- ### Scenario 4: Production Deployment
171
- ```
172
- User: "Deploy to production"
173
-
174
- You: *Before executing*
175
-
176
- ekkOS_Conflict({
177
- proposed_action: "deploy to production environment",
178
- scope: "deployment"
179
- })
180
-
181
- Response:
182
- {
183
- "has_conflicts": true,
184
- "blocking_directives": [
185
- {"type": "MUST", "rule": "Run tests before production deploy"}
186
- ]
187
- }
188
-
189
- "⛔ BLOCKED: Deployment requires tests first.
190
- [MUST] Run tests before production deploy
191
-
192
- Running tests now..."
193
-
194
- *Runs tests, then proceeds if they pass*
195
- ```
196
-
197
- ## Override Protocol
198
-
199
- If user wants to override a directive:
200
-
201
- 1. **Require explicit confirmation:**
202
- ```
203
- User: "Override it, push to main anyway"
204
- You: "Overriding [NEVER] Push directly to main.
205
- Type 'CONFIRM OVERRIDE' to proceed."
206
- ```
207
-
208
- 2. **Log the override:**
209
- ```
210
- ekkOS_Forge({
211
- title: "Override: Pushed to main despite directive",
212
- problem: "User overrode NEVER directive for specific reason",
213
- solution: "Allowed because: [user's reason]",
214
- tags: ["override", "directive-exception"]
215
- })
216
- ```
217
-
218
- 3. **Proceed with caution:**
219
- ```
220
- "Override confirmed. Proceeding with push to main.
221
- ⚠️ This action was logged."
222
- ```
223
-
224
- ## Common Conflict Scopes
225
-
226
- | Scope | Checks Against |
227
- |-------|----------------|
228
- | `"git"` | Branch rules, push policies |
229
- | `"database"` | Data protection rules |
230
- | `"deployment"` | Release procedures |
231
- | `"files"` | Deletion/modification rules |
232
- | `"security"` | Credential handling |
233
- | `"infrastructure"` | Resource management |
234
-
235
- ## Integration with Directives
236
-
237
- This skill enforces Layer 9 (Directives):
238
-
239
- ```
240
- ┌─────────────────────────────────────────────────────────────────┐
241
- │ USER ACTION REQUEST │
242
- │ └── "Delete all test files" │
243
- │ ↓ │
244
- │ ekkOS_Safety SKILL (This Skill) │
245
- │ └── ekkOS_Conflict check │
246
- │ ↓ │
247
- │ DIRECTIVE LAYER (Layer 9) │
248
- │ └── [NEVER] Delete without confirmation │
249
- │ ↓ │
250
- │ BLOCKED or PROCEED │
251
- └─────────────────────────────────────────────────────────────────┘
252
- ```
253
-
254
- ## Success Metrics
255
-
256
- You're using this skill correctly when:
257
- - EVERY destructive action is checked first
258
- - Blocking directives actually BLOCK
259
- - Warnings are shown but don't block unnecessarily
260
- - Overrides are logged
261
- - Users feel protected, not annoyed
262
-
263
- ---
264
-
265
- **Mantra**: About to destroy something? Check first. Always. No exceptions.