0xkobold 0.7.2 → 0.8.0

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 (252) hide show
  1. package/HEARTBEAT.md +239 -0
  2. package/IDENTITY.md +12 -0
  3. package/README.md +138 -4
  4. package/SOUL.md +21 -0
  5. package/dist/package.json +10 -5
  6. package/dist/src/agent/bootstrap-loader.js +295 -66
  7. package/dist/src/agent/bootstrap-loader.js.map +1 -1
  8. package/dist/src/agent/context-pruning.js +10 -5
  9. package/dist/src/agent/context-pruning.js.map +1 -1
  10. package/dist/src/agent/embedded-runner.js +29 -15
  11. package/dist/src/agent/embedded-runner.js.map +1 -1
  12. package/dist/src/agent/index.js +5 -2
  13. package/dist/src/agent/index.js.map +1 -1
  14. package/dist/src/agent/system-prompt.js +167 -20
  15. package/dist/src/agent/system-prompt.js.map +1 -1
  16. package/dist/src/agent/tools/spawn-agent.js +72 -5
  17. package/dist/src/agent/tools/spawn-agent.js.map +1 -1
  18. package/dist/src/channels/slack/webhook.js +2 -2
  19. package/dist/src/channels/slack/webhook.js.map +1 -1
  20. package/dist/src/channels/telegram/bot.js +4 -4
  21. package/dist/src/channels/telegram/bot.js.map +1 -1
  22. package/dist/src/channels/whatsapp/integration.js +4 -4
  23. package/dist/src/channels/whatsapp/integration.js.map +1 -1
  24. package/dist/src/cli/commands/gateway.js +9 -10
  25. package/dist/src/cli/commands/gateway.js.map +1 -1
  26. package/dist/src/cli/commands/init.js +90 -0
  27. package/dist/src/cli/commands/init.js.map +1 -1
  28. package/dist/src/cli/commands/setup.js +53 -0
  29. package/dist/src/cli/commands/setup.js.map +1 -1
  30. package/dist/src/cli/index.js +0 -0
  31. package/dist/src/config/unified-config.js +5 -0
  32. package/dist/src/config/unified-config.js.map +1 -1
  33. package/dist/src/cron/index.js +2 -0
  34. package/dist/src/cron/index.js.map +1 -1
  35. package/dist/src/cron/nl-parser.js +522 -0
  36. package/dist/src/cron/nl-parser.js.map +1 -0
  37. package/dist/src/cron/runner.js +6 -31
  38. package/dist/src/cron/runner.js.map +1 -1
  39. package/dist/src/event-bus/index.js.map +1 -1
  40. package/dist/src/extensions/core/agent-orchestrator-extension.js +200 -148
  41. package/dist/src/extensions/core/agent-orchestrator-extension.js.map +1 -1
  42. package/dist/src/extensions/core/diagnostics-extension.js +93 -56
  43. package/dist/src/extensions/core/diagnostics-extension.js.map +1 -1
  44. package/dist/src/extensions/core/draconic-safety-extension.js +256 -3
  45. package/dist/src/extensions/core/draconic-safety-extension.js.map +1 -1
  46. package/dist/src/extensions/core/heartbeat-extension.js +416 -150
  47. package/dist/src/extensions/core/heartbeat-extension.js.map +1 -1
  48. package/dist/src/extensions/core/{generative-agents-extension.js → learning-extension.js} +90 -128
  49. package/dist/src/extensions/core/learning-extension.js.map +1 -0
  50. package/dist/src/extensions/core/perennial-memory-extension.js +884 -87
  51. package/dist/src/extensions/core/perennial-memory-extension.js.map +1 -1
  52. package/dist/src/extensions/core/routed-ollama-extension.js +345 -0
  53. package/dist/src/extensions/core/routed-ollama-extension.js.map +1 -0
  54. package/dist/src/extensions/core/task-manager-extension.js +25 -2
  55. package/dist/src/extensions/core/task-manager-extension.js.map +1 -1
  56. package/dist/src/extensions/core/websearch-enhanced-extension.js +81 -23
  57. package/dist/src/extensions/core/websearch-enhanced-extension.js.map +1 -1
  58. package/dist/src/extensions/core/workspace-footer-extension.js +40 -63
  59. package/dist/src/extensions/core/workspace-footer-extension.js.map +1 -1
  60. package/dist/src/extensions/loader.js +5 -1
  61. package/dist/src/extensions/loader.js.map +1 -1
  62. package/dist/src/gateway/gateway-server.js +74 -3
  63. package/dist/src/gateway/gateway-server.js.map +1 -1
  64. package/dist/src/gateway/index.js +2 -2
  65. package/dist/src/gateway/index.js.map +1 -1
  66. package/dist/src/gateway/methods/agent.js +1 -1
  67. package/dist/src/gateway/methods/agent.js.map +1 -1
  68. package/dist/src/gateway/methods/index.js +4 -0
  69. package/dist/src/gateway/methods/index.js.map +1 -1
  70. package/dist/src/gateway/methods/node.js +261 -0
  71. package/dist/src/gateway/methods/node.js.map +1 -0
  72. package/dist/src/gateway/queue-modes.js +356 -0
  73. package/dist/src/gateway/queue-modes.js.map +1 -0
  74. package/dist/src/index.js +47 -6
  75. package/dist/src/index.js.map +1 -1
  76. package/dist/src/llm/community-analytics.js +569 -0
  77. package/dist/src/llm/community-analytics.js.map +1 -0
  78. package/dist/src/llm/index.js +28 -4
  79. package/dist/src/llm/index.js.map +1 -1
  80. package/dist/src/llm/model-discovery.js +335 -0
  81. package/dist/src/llm/model-discovery.js.map +1 -0
  82. package/dist/src/llm/model-popularity.js +566 -0
  83. package/dist/src/llm/model-popularity.js.map +1 -0
  84. package/dist/src/llm/model-scoring-db.js +553 -0
  85. package/dist/src/llm/model-scoring-db.js.map +1 -0
  86. package/dist/src/llm/multi-provider.js +258 -0
  87. package/dist/src/llm/multi-provider.js.map +1 -0
  88. package/dist/src/llm/ollama.js +133 -187
  89. package/dist/src/llm/ollama.js.map +1 -1
  90. package/dist/src/llm/router-commands.js +773 -0
  91. package/dist/src/llm/router-commands.js.map +1 -0
  92. package/dist/src/llm/router-core.js +600 -0
  93. package/dist/src/llm/router-core.js.map +1 -0
  94. package/dist/src/memory/checkpoint-manager.js +278 -0
  95. package/dist/src/memory/checkpoint-manager.js.map +1 -0
  96. package/dist/src/memory/conflict-detector.js +279 -0
  97. package/dist/src/memory/conflict-detector.js.map +1 -0
  98. package/dist/src/memory/context-graph.js +360 -0
  99. package/dist/src/memory/context-graph.js.map +1 -0
  100. package/dist/src/memory/dialectic/benchmark-cli.js +200 -0
  101. package/dist/src/memory/dialectic/benchmark-cli.js.map +1 -0
  102. package/dist/src/memory/dialectic/debug-reasoning.js +37 -0
  103. package/dist/src/memory/dialectic/debug-reasoning.js.map +1 -0
  104. package/dist/src/memory/dialectic/index.js +135 -0
  105. package/dist/src/memory/dialectic/index.js.map +1 -0
  106. package/dist/src/memory/dialectic/nudges.js +380 -0
  107. package/dist/src/memory/dialectic/nudges.js.map +1 -0
  108. package/dist/src/memory/dialectic/reasoning-engine.js +607 -0
  109. package/dist/src/memory/dialectic/reasoning-engine.js.map +1 -0
  110. package/dist/src/memory/dialectic/reasoning.js +390 -0
  111. package/dist/src/memory/dialectic/reasoning.js.map +1 -0
  112. package/dist/src/memory/dialectic/skill-creation.js +481 -0
  113. package/dist/src/memory/dialectic/skill-creation.js.map +1 -0
  114. package/dist/src/memory/dialectic/store.js +663 -0
  115. package/dist/src/memory/dialectic/store.js.map +1 -0
  116. package/dist/src/memory/dialectic/types.js +11 -0
  117. package/dist/src/memory/dialectic/types.js.map +1 -0
  118. package/dist/src/memory/index.js +24 -2
  119. package/dist/src/memory/index.js.map +1 -1
  120. package/dist/src/memory/memory-decay.js +350 -0
  121. package/dist/src/memory/memory-decay.js.map +1 -0
  122. package/dist/src/memory/memory-integration.js +5 -5
  123. package/dist/src/memory/memory-integration.js.map +1 -1
  124. package/dist/src/memory/migrate-memory-stream.js +97 -0
  125. package/dist/src/memory/migrate-memory-stream.js.map +1 -0
  126. package/dist/src/memory/session-memory-bridge.js +49 -5
  127. package/dist/src/memory/session-memory-bridge.js.map +1 -1
  128. package/dist/src/memory/session-store.js +123 -0
  129. package/dist/src/memory/session-store.js.map +1 -1
  130. package/dist/src/memory/smart-write-rules.js +164 -0
  131. package/dist/src/memory/smart-write-rules.js.map +1 -0
  132. package/dist/src/memory/tiered-memory.js +436 -0
  133. package/dist/src/memory/tiered-memory.js.map +1 -0
  134. package/dist/src/memory/types.js +6 -0
  135. package/dist/src/memory/types.js.map +1 -0
  136. package/dist/src/memory/verify-migration.js +99 -0
  137. package/dist/src/memory/verify-migration.js.map +1 -0
  138. package/dist/src/pi-config.js +11 -9
  139. package/dist/src/pi-config.js.map +1 -1
  140. package/dist/src/skills/conditional-skills.js +464 -0
  141. package/dist/src/skills/conditional-skills.js.map +1 -0
  142. package/dist/src/skills/index.js +5 -0
  143. package/dist/src/skills/index.js.map +1 -1
  144. package/dist/src/skills/loader.js +56 -0
  145. package/dist/src/skills/loader.js.map +1 -1
  146. package/dist/src/skills/skill-manage.js +417 -0
  147. package/dist/src/skills/skill-manage.js.map +1 -0
  148. package/dist/src/tui/commands/orchestration-commands.js +62 -0
  149. package/dist/src/tui/commands/orchestration-commands.js.map +1 -1
  150. package/package.json +10 -5
  151. package/skills/model-router-test.ts +65 -0
  152. package/dist/src/extensions/core/auto-security-scan-extension.js +0 -41
  153. package/dist/src/extensions/core/auto-security-scan-extension.js.map +0 -1
  154. package/dist/src/extensions/core/cloudflare-browser-extension.js +0 -389
  155. package/dist/src/extensions/core/cloudflare-browser-extension.js.map +0 -1
  156. package/dist/src/extensions/core/compaction-safeguard.js +0 -223
  157. package/dist/src/extensions/core/compaction-safeguard.js.map +0 -1
  158. package/dist/src/extensions/core/generative-agents-extension.js.map +0 -1
  159. package/dist/src/extensions/core/obsidian-bridge-extension.js +0 -488
  160. package/dist/src/extensions/core/obsidian-bridge-extension.js.map +0 -1
  161. package/dist/src/llm/router.js +0 -145
  162. package/dist/src/llm/router.js.map +0 -1
  163. package/skills/kobold-scan-skill/node_modules/.package-lock.json +0 -172
  164. package/skills/kobold-scan-skill/node_modules/ansi-styles/index.d.ts +0 -345
  165. package/skills/kobold-scan-skill/node_modules/ansi-styles/index.js +0 -163
  166. package/skills/kobold-scan-skill/node_modules/ansi-styles/license +0 -9
  167. package/skills/kobold-scan-skill/node_modules/ansi-styles/package.json +0 -56
  168. package/skills/kobold-scan-skill/node_modules/ansi-styles/readme.md +0 -152
  169. package/skills/kobold-scan-skill/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  170. package/skills/kobold-scan-skill/node_modules/balanced-match/LICENSE.md +0 -21
  171. package/skills/kobold-scan-skill/node_modules/balanced-match/README.md +0 -97
  172. package/skills/kobold-scan-skill/node_modules/balanced-match/index.js +0 -62
  173. package/skills/kobold-scan-skill/node_modules/balanced-match/package.json +0 -48
  174. package/skills/kobold-scan-skill/node_modules/brace-expansion/.github/FUNDING.yml +0 -2
  175. package/skills/kobold-scan-skill/node_modules/brace-expansion/LICENSE +0 -21
  176. package/skills/kobold-scan-skill/node_modules/brace-expansion/README.md +0 -135
  177. package/skills/kobold-scan-skill/node_modules/brace-expansion/index.js +0 -203
  178. package/skills/kobold-scan-skill/node_modules/brace-expansion/package.json +0 -49
  179. package/skills/kobold-scan-skill/node_modules/chalk/index.d.ts +0 -415
  180. package/skills/kobold-scan-skill/node_modules/chalk/license +0 -9
  181. package/skills/kobold-scan-skill/node_modules/chalk/package.json +0 -68
  182. package/skills/kobold-scan-skill/node_modules/chalk/readme.md +0 -341
  183. package/skills/kobold-scan-skill/node_modules/chalk/source/index.js +0 -229
  184. package/skills/kobold-scan-skill/node_modules/chalk/source/templates.js +0 -134
  185. package/skills/kobold-scan-skill/node_modules/chalk/source/util.js +0 -39
  186. package/skills/kobold-scan-skill/node_modules/color-convert/CHANGELOG.md +0 -54
  187. package/skills/kobold-scan-skill/node_modules/color-convert/LICENSE +0 -21
  188. package/skills/kobold-scan-skill/node_modules/color-convert/README.md +0 -68
  189. package/skills/kobold-scan-skill/node_modules/color-convert/conversions.js +0 -839
  190. package/skills/kobold-scan-skill/node_modules/color-convert/index.js +0 -81
  191. package/skills/kobold-scan-skill/node_modules/color-convert/package.json +0 -48
  192. package/skills/kobold-scan-skill/node_modules/color-convert/route.js +0 -97
  193. package/skills/kobold-scan-skill/node_modules/color-name/LICENSE +0 -8
  194. package/skills/kobold-scan-skill/node_modules/color-name/README.md +0 -11
  195. package/skills/kobold-scan-skill/node_modules/color-name/index.js +0 -152
  196. package/skills/kobold-scan-skill/node_modules/color-name/package.json +0 -28
  197. package/skills/kobold-scan-skill/node_modules/commander/LICENSE +0 -22
  198. package/skills/kobold-scan-skill/node_modules/commander/Readme.md +0 -1129
  199. package/skills/kobold-scan-skill/node_modules/commander/esm.mjs +0 -16
  200. package/skills/kobold-scan-skill/node_modules/commander/index.js +0 -27
  201. package/skills/kobold-scan-skill/node_modules/commander/lib/argument.js +0 -147
  202. package/skills/kobold-scan-skill/node_modules/commander/lib/command.js +0 -2179
  203. package/skills/kobold-scan-skill/node_modules/commander/lib/error.js +0 -45
  204. package/skills/kobold-scan-skill/node_modules/commander/lib/help.js +0 -461
  205. package/skills/kobold-scan-skill/node_modules/commander/lib/option.js +0 -326
  206. package/skills/kobold-scan-skill/node_modules/commander/lib/suggestSimilar.js +0 -100
  207. package/skills/kobold-scan-skill/node_modules/commander/package-support.json +0 -16
  208. package/skills/kobold-scan-skill/node_modules/commander/package.json +0 -80
  209. package/skills/kobold-scan-skill/node_modules/commander/typings/index.d.ts +0 -891
  210. package/skills/kobold-scan-skill/node_modules/fs.realpath/LICENSE +0 -43
  211. package/skills/kobold-scan-skill/node_modules/fs.realpath/README.md +0 -33
  212. package/skills/kobold-scan-skill/node_modules/fs.realpath/index.js +0 -66
  213. package/skills/kobold-scan-skill/node_modules/fs.realpath/old.js +0 -303
  214. package/skills/kobold-scan-skill/node_modules/fs.realpath/package.json +0 -26
  215. package/skills/kobold-scan-skill/node_modules/glob/LICENSE +0 -15
  216. package/skills/kobold-scan-skill/node_modules/glob/README.md +0 -399
  217. package/skills/kobold-scan-skill/node_modules/glob/common.js +0 -244
  218. package/skills/kobold-scan-skill/node_modules/glob/glob.js +0 -790
  219. package/skills/kobold-scan-skill/node_modules/glob/package.json +0 -55
  220. package/skills/kobold-scan-skill/node_modules/glob/sync.js +0 -486
  221. package/skills/kobold-scan-skill/node_modules/has-flag/index.d.ts +0 -39
  222. package/skills/kobold-scan-skill/node_modules/has-flag/index.js +0 -8
  223. package/skills/kobold-scan-skill/node_modules/has-flag/license +0 -9
  224. package/skills/kobold-scan-skill/node_modules/has-flag/package.json +0 -46
  225. package/skills/kobold-scan-skill/node_modules/has-flag/readme.md +0 -89
  226. package/skills/kobold-scan-skill/node_modules/inflight/LICENSE +0 -15
  227. package/skills/kobold-scan-skill/node_modules/inflight/README.md +0 -37
  228. package/skills/kobold-scan-skill/node_modules/inflight/inflight.js +0 -54
  229. package/skills/kobold-scan-skill/node_modules/inflight/package.json +0 -29
  230. package/skills/kobold-scan-skill/node_modules/inherits/LICENSE +0 -16
  231. package/skills/kobold-scan-skill/node_modules/inherits/README.md +0 -42
  232. package/skills/kobold-scan-skill/node_modules/inherits/inherits.js +0 -9
  233. package/skills/kobold-scan-skill/node_modules/inherits/inherits_browser.js +0 -27
  234. package/skills/kobold-scan-skill/node_modules/inherits/package.json +0 -29
  235. package/skills/kobold-scan-skill/node_modules/minimatch/LICENSE +0 -15
  236. package/skills/kobold-scan-skill/node_modules/minimatch/README.md +0 -259
  237. package/skills/kobold-scan-skill/node_modules/minimatch/lib/path.js +0 -4
  238. package/skills/kobold-scan-skill/node_modules/minimatch/minimatch.js +0 -944
  239. package/skills/kobold-scan-skill/node_modules/minimatch/package.json +0 -35
  240. package/skills/kobold-scan-skill/node_modules/once/LICENSE +0 -15
  241. package/skills/kobold-scan-skill/node_modules/once/README.md +0 -79
  242. package/skills/kobold-scan-skill/node_modules/once/once.js +0 -42
  243. package/skills/kobold-scan-skill/node_modules/once/package.json +0 -33
  244. package/skills/kobold-scan-skill/node_modules/supports-color/browser.js +0 -5
  245. package/skills/kobold-scan-skill/node_modules/supports-color/index.js +0 -135
  246. package/skills/kobold-scan-skill/node_modules/supports-color/license +0 -9
  247. package/skills/kobold-scan-skill/node_modules/supports-color/package.json +0 -53
  248. package/skills/kobold-scan-skill/node_modules/supports-color/readme.md +0 -76
  249. package/skills/kobold-scan-skill/node_modules/wrappy/LICENSE +0 -15
  250. package/skills/kobold-scan-skill/node_modules/wrappy/README.md +0 -36
  251. package/skills/kobold-scan-skill/node_modules/wrappy/package.json +0 -29
  252. package/skills/kobold-scan-skill/node_modules/wrappy/wrappy.js +0 -33
package/HEARTBEAT.md ADDED
@@ -0,0 +1,239 @@
1
+ # HEARTBEAT - 0xKobold Maintenance & Security Review
2
+
3
+ > Track package updates, security issues, incomplete implementations, and bugs
4
+
5
+ **Started:** 2026-03-17
6
+ **Owner:** Claude + moika
7
+
8
+ ---
9
+
10
+ ## 🎯 Project Overview
11
+
12
+ Maintain 0xKobold health: update packages, fix security vulnerabilities, complete incomplete implementations, and resolve bugs.
13
+
14
+ ---
15
+
16
+ ## 📋 Action Tasks
17
+
18
+ ### 🔒 Security Issues (HIGH PRIORITY)
19
+
20
+ | Issue | Status | Severity | Notes |
21
+ |-------|--------|----------|-------|
22
+ | Check for vulnerable dependencies | ⬜ TODO | HIGH | Run `bun audit`, check npm advisories |
23
+ | Review environment variable handling | ⬜ TODO | HIGH | Ensure secrets not in logs |
24
+ | Audit API key storage | ⬜ TODO | HIGH | Check ~/.0xkobold/auth-profiles.db |
25
+ | Review Discord token handling | ⬜ TODO | MEDIUM | Verify token not leaked in logs |
26
+ | Check SQL injection vectors | ⬜ TODO | MEDIUM | Review all SQLite queries |
27
+
28
+ ### 📦 Package Updates
29
+
30
+ | Package | Current | Latest | Status | Notes |
31
+ |---------|---------|--------|--------|-------|
32
+ | @mariozechner/pi-coding-agent | Check | Latest | ⬜ TODO | Core framework |
33
+ | @mariozechner/pi-tui | Check | Latest | ⬜ TODO | Terminal UI |
34
+ | bun | Check | Latest | ⬜ TODO | Runtime |
35
+ | discord.js | Check | Latest | ⬜ TODO | Discord bot |
36
+ | commandeer | Check | Latest | ⬜ TODO | CLI framework |
37
+
38
+ ### 🔧 Incomplete Implementations
39
+
40
+ | Feature | Location | Status | Notes |
41
+ |---------|----------|--------|-------|
42
+ | Kobold Desktop Pet | packages/kobold-desktop-pet/ | 🔄 IN PROGRESS | Electron app created, needs sprite refinement |
43
+ | Mission Control Charts | packages/mission-control/ | ⬜ TODO | recharts installed but not implemented |
44
+ | Agent Activity WebSocket | packages/mission-control/ | ⬜ TODO | Connect to gateway ws://100.65.167.97:7777 |
45
+ | Extension Loading Issues | src/extensions/core/ | ⚠️ WARNING | routed-ollama, perennial-memory extensions fail to load |
46
+ | Moltube Skill | ~/.0xkobold/skills/moltube/ | ⚠️ WARNING | Missing description field |
47
+
48
+ ### 🐛 Known Bugs
49
+
50
+ | Bug | Location | Status | Notes |
51
+ |-----|----------|--------|-------|
52
+ | Extension import errors | routed-ollama-extension.ts | ⚠️ ACTIVE | handleTierListCommand not found at runtime |
53
+ | Extension import errors | perennial-memory-extension.ts | ⚠️ ACTIVE | getDialecticReasoningEngine not found at runtime |
54
+ | Pixel art sprite quality | kobold-desktop-pet | 🔄 IMPROVING | ASCII art style, needs proper pixel rendering |
55
+
56
+ ---
57
+
58
+ ## 🔍 Current Issues to Investigate
59
+
60
+ ### Extension Loading Failures
61
+
62
+ **Symptoms:**
63
+ ```
64
+ [Extension issues]
65
+ routed-ollama-extension.ts
66
+ Failed to load extension: Export named 'handleTierListCommand' not found
67
+
68
+ perennial-memory-extension.ts
69
+ Failed to load extension: Export named 'getDialecticReasoningEngine' not found
70
+ ```
71
+
72
+ **Investigation needed:**
73
+ - [ ] Check if exports exist in source files
74
+ - [ ] Check build output for missing exports
75
+ - [ ] Verify import paths are correct
76
+ - [ ] Check for circular dependencies
77
+
78
+ ### Skill Configuration Issues
79
+
80
+ **Symptoms:**
81
+ ```
82
+ [Skill conflicts]
83
+ auto (user) ~/.0xkobold/skills/moltube/SKILL.md
84
+ description is required
85
+ ```
86
+
87
+ **Investigation needed:**
88
+ - [ ] Update MOLTUBE SKILL.md to include required description field
89
+ - [ ] Check other skills for missing required fields
90
+
91
+ ---
92
+
93
+ ## 📊 Recently Completed (Historical)
94
+
95
+ ### Architecture Consolidation (2026-03-14)
96
+
97
+ | Phase | Status |
98
+ |-------|--------|
99
+ | Memory Consolidation | ✅ COMPLETE |
100
+ | Safety Extension | ✅ COMPLETE |
101
+ | Router Provider | ✅ COMPLETE |
102
+ | Event Cleanup | ✅ COMPLETE |
103
+ | Dialectic Memory | ✅ COMPLETE |
104
+
105
+ ### Mission Control Dashboard (2026-03-16)
106
+
107
+ | Feature | Status |
108
+ |---------|--------|
109
+ | SSE real-time stats | ✅ COMPLETE |
110
+ | Collapsible sidebar | ✅ COMPLETE |
111
+ | Network view | ✅ COMPLETE |
112
+ | Perennial browser | ✅ COMPLETE |
113
+ | Dialectic logs | ✅ COMPLETE |
114
+ | Sessions view | ✅ COMPLETE |
115
+ | Logs browser | ✅ COMPLETE |
116
+ | Alerts view | ✅ COMPLETE |
117
+ | Tasks (Kanban) | ✅ COMPLETE |
118
+ | Agent Activity | ✅ COMPLETE |
119
+ | Settings view | ✅ COMPLETE |
120
+ | UI component library | ✅ COMPLETE |
121
+
122
+ ---
123
+
124
+ ## 🛠️ Maintenance Tasks
125
+
126
+ ### Weekly Tasks
127
+
128
+ - [ ] Run `bun audit` to check for vulnerabilities
129
+ - [ ] Run `bun outdated` to check for updates
130
+ - [ ] Review logs for errors
131
+ - [ ] Check disk usage (~/.0xkobold/)
132
+
133
+ ### Monthly Tasks
134
+
135
+ - [ ] Update all dependencies
136
+ - [ ] Review security advisories
137
+ - [ ] Clean up old session data
138
+ - [ ] Backup databases
139
+
140
+ ### Quarterly Tasks
141
+
142
+ - [ ] Full security audit
143
+ - [ ] Performance profiling
144
+ - [ ] Dependency cleanup (remove unused)
145
+ - [ ] Update documentation
146
+
147
+ ---
148
+
149
+ ## 📁 Key File Locations
150
+
151
+ ### Configuration Files
152
+ - `~/.0xkobold/config.json` - Main configuration
153
+ - `~/.0xkobold/agents.db` - Agent registry
154
+ - `~/.0xkobold/sessions.db` - Session history
155
+ - `~/.0xkobold/tasks.db` - Kanban tasks
156
+
157
+ ### Extension Files
158
+ - `src/extensions/core/` - Core extensions
159
+ - `src/pi-config.ts` - Extension registration
160
+
161
+ ### Skill Files
162
+ - `skills/` - Project-level skills
163
+ - `~/.0xkobold/skills/` - Global skills
164
+ - `~/.agents/skills/` - Agent skills
165
+
166
+ ### Database Files
167
+ - `~/.0xkobold/dialectic/dialectic.db` - Dialectic reasoning
168
+ - `~/.0xkobold/memory/perennial/knowledge.db` - Perennial memory
169
+
170
+ ---
171
+
172
+ ## 🧪 Testing Status
173
+
174
+ | Test Suite | Status | Coverage |
175
+ |------------|--------|----------|
176
+ | Unit tests | ✅ Pass | Check with `bun test` |
177
+ | Integration tests | ✅ Pass | Check with `bun test` |
178
+ | E2E tests | ✅ Pass | Check with `bun test` |
179
+ | Security tests | ⬜ TODO | Need to add |
180
+
181
+ ---
182
+
183
+ ## 📝 Notes
184
+
185
+ ### 2026-03-17 Session Notes
186
+
187
+ 1. Reviewed HEARTBEAT status - consolidation phases complete
188
+ 2. Identified extension loading issues at startup
189
+ 3. Created Kobold Desktop Pet package with Pokemon-style dragon sprite
190
+ 4. Installed pixel-art, game-engine, browser-use skills
191
+ 5. Mission Control dashboard complete with all views
192
+
193
+ ### Priorities This Session
194
+
195
+ 1. **Fix extension loading errors** - routed-ollama, perennial-memory
196
+ 2. **Fix skill configuration** - Moltube description
197
+ 3. **Review package versions** - Update outdated packages
198
+ 4. **Complete Desktop Pet** - Refine sprite, add animations
199
+ 5. **Add charts to Mission Control** - Historical data visualization
200
+
201
+ ### Open Questions
202
+
203
+ 1. Should we migrate extension loading to ESM?
204
+ 2. Do we need to pin dependency versions for stability?
205
+ 3. Should Desktop Pet be a separate npm package?
206
+
207
+ ---
208
+
209
+ ## 🚀 Quick Reference Commands
210
+
211
+ ```bash
212
+ # Security audit
213
+ bun audit
214
+
215
+ # Check outdated packages
216
+ bun outdated
217
+
218
+ # Update all packages
219
+ bun update
220
+
221
+ # Run tests
222
+ bun test
223
+
224
+ # Type check
225
+ bun run build
226
+
227
+ # Start development
228
+ bun run start
229
+
230
+ # Start Mission Control
231
+ cd packages/mission-control && bun run dev
232
+
233
+ # Start Desktop Pet
234
+ cd packages/kobold-desktop-pet && bun run dev
235
+ ```
236
+
237
+ ---
238
+
239
+ *Last Updated: 2026-03-17 EDT*
package/IDENTITY.md ADDED
@@ -0,0 +1,12 @@
1
+ # IDENTITY
2
+
3
+ **Name:** 0xKobold
4
+ **Emoji:** 🐉
5
+ **Tagline:** Your digital familiar
6
+ **Role:** AI companion and coding assistant
7
+
8
+ ## Tone
9
+ - Conversational and warm
10
+ - Uses emojis occasionally 🎉
11
+ - Celebrates wins with enthusiasm
12
+ - Gentle with mistakes
package/README.md CHANGED
@@ -139,8 +139,8 @@ npm install -g 0xkobold
139
139
  # Initialize workspace
140
140
  0xkobold init
141
141
 
142
- # Start 0xKobold
143
- 0xkobold start
142
+ # Start 0xKobold (reduce extension logs with env var)
143
+ KOBOLD_EXTENSION_LOGS=false 0xkobold start
144
144
  ```
145
145
 
146
146
  #### Option 2: Clone from source
@@ -156,10 +156,16 @@ bun install
156
156
  # Initialize workspace
157
157
  bun run init
158
158
 
159
- # Start 0xKobold
160
- bun run start
159
+ # Start 0xKobold (reduce extension logs with env var)
160
+ KOBOLD_EXTENSION_LOGS=false bun run start
161
161
  ```
162
162
 
163
+ ### Environment Variables
164
+
165
+ | Variable | Description | Default |
166
+ |----------|-------------|---------|
167
+ | `KOBOLD_EXTENSION_LOGS` | Set to `false` to reduce extension loading logs | `true` |
168
+
163
169
  ---
164
170
 
165
171
  ## Multi-Agent System 🎯
@@ -191,6 +197,111 @@ delegate the user authentication project
191
197
 
192
198
  ---
193
199
 
200
+ ## Model Scoring & Rankings 📊
201
+
202
+ 0xKobold tracks model performance and generates AI-powered tier lists.
203
+
204
+ ### Commands
205
+
206
+ ```bash
207
+ /rate <1-5> # Rate last response
208
+ /model-rankings [day|week|month|all] # Show leaderboard
209
+ /tier-list [day|week|month|all] # AI-generated tier list
210
+ /popularity [--refresh] # Ollama pull counts
211
+ /router stats <model> # Per-model statistics
212
+ /router history # Recent performance
213
+
214
+ /best-for [code|chat|vision|reasoning|all] # Best models per task
215
+ /community enable # Enable anonymous sharing
216
+ /community export # Generate submission file
217
+ /community fetch # Fetch community stats
218
+ /community merge # Merge local + community
219
+ /community tier-list # Show community tiers
220
+ ```
221
+
222
+ ### Task-Specific Rankings
223
+
224
+ The `/best-for` command shows which models perform best for specific tasks:
225
+
226
+ ```bash
227
+ /best-for code # Best models for coding
228
+ /best-for chat # Best for general conversation
229
+ /best-for vision # Best for image analysis
230
+ /best-for reasoning # Best for complex reasoning
231
+ /best-for all # Show all categories
232
+ ```
233
+
234
+ ### How It Works
235
+
236
+ | Factor | Weight | Description |
237
+ |--------|--------|-------------|
238
+ | Quality | 40% | User ratings (1-5) |
239
+ | Success Rate | 30% | Response success/failure |
240
+ | Latency | 20% | Response time |
241
+ | Popularity | 10% | Community usage |
242
+
243
+ ### Tier System
244
+
245
+ | Tier | Score | Description |
246
+ |------|-------|-------------|
247
+ | 🥇 S | ≥0.85 | Excellent - Top performers |
248
+ | 🥈 A | ≥0.70 | Great - Reliable choices |
249
+ | 🥉 B | ≥0.55 | Good - Solid performers |
250
+ | ⭐ C | ≥0.40 | Fair - Acceptable |
251
+ | · D | <0.40 | Needs improvement |
252
+
253
+ ### Community Stats
254
+
255
+ Share anonymized data to help everyone:
256
+
257
+ ```bash
258
+ # Enable sharing
259
+ /community enable
260
+
261
+ # Use models and rate them
262
+ /rate 4
263
+
264
+ # Generate submission file
265
+ /community export
266
+
267
+ # File saved to ~/.0xkobold/community-submission.json
268
+ # Submit to: https://github.com/kobolds/0xKobolds/tree/main/community
269
+ ```
270
+
271
+ ### Data Tracked per Task
272
+
273
+ | Metric | Code | Chat | Vision | Reasoning |
274
+ |--------|------|------|--------|------------|
275
+ | Rating | ✅ | ✅ | ✅ | ✅ |
276
+ | Latency | ✅ | ✅ | ✅ | ✅ |
277
+ | Success Rate | ✅ | ✅ | ✅ | ✅ |
278
+ | Usage Count | ✅ | ✅ | ✅ | ✅ |
279
+
280
+ ### Privacy
281
+
282
+ - ✅ **Local only** - All data stored in `~/.0xkobold/`
283
+ - ✅ **No prompts/responses stored** - Only metrics
284
+ - ✅ **No user identity tracked** - Anonymous session IDs
285
+ - ✅ **Community sharing opt-in** - Disabled by default
286
+ - ✅ **See exactly what's shared** - `/community export` shows all data
287
+
288
+ ### Example Output
289
+
290
+ ```
291
+ 🏆 AI-Generated Model Tier List
292
+
293
+ 🥇 Tier S - Excellent (score ≥ 0.85)
294
+ qwen3-coder:14b - 0.87 █████████ [Reliable, Fast]
295
+
296
+ 🥈 Tier A - Great (score ≥ 0.70)
297
+ llama3.1:8b - 0.78 ███████▊ [Well-tested]
298
+
299
+ 🥉 Tier B - Good (score ≥ 0.55)
300
+ mistral:7b - 0.62 ██████▎ [Fast]
301
+ ```
302
+
303
+ ---
304
+
194
305
  ## Koclaw Gateway 🌐
195
306
 
196
307
  JSON-RPC style gateway for multi-channel integration with session persistence.
@@ -472,6 +583,7 @@ eventBus.on('agent.spawned', handler);
472
583
  | `src/gateway/` | Koclaw JSON-RPC gateway (port 7777) |
473
584
  | `src/gateway/protocol/` | Frame types (Hello, Connect, Request, Response, Event) |
474
585
  | `src/gateway/methods/` | Method handlers (agent.run, agent.status, etc.) |
586
+ | `src/node/` | Node system for external devices (see `docs/NODE-SYSTEM-DESIGN.md`) |
475
587
  | `src/memory/` | Conversation persistence & session management |
476
588
  | `src/memory/session-store.ts` | SQLite session persistence |
477
589
  | `src/memory/session-resume.ts` | Auto-save/restore sessions |
@@ -542,6 +654,28 @@ bun test --coverage
542
654
 
543
655
  ---
544
656
 
657
+ ## Packages
658
+
659
+ The project includes several packages in `packages/`:
660
+
661
+ | Package | Description |
662
+ |---------|-------------|
663
+ | `kobold-desktop-pet` | 3D animated desktop pet (VRM + Mixamo) - see `packages/kobold-desktop-pet/README.md` |
664
+ | `mission-control` | Web dashboard for monitoring agents |
665
+ | `pi-cloudflare-browser` | Cloudflare browser automation |
666
+
667
+ ### Desktop Pet
668
+
669
+ The `kobold-desktop-pet` package connects as a **node** to the gateway:
670
+ - Shows agent status (idle, working, thinking, sleeping)
671
+ - Draggable, always-on-top transparent window
672
+ - System tray integration
673
+ - Custom VRM avatars with Mixamo animations
674
+
675
+ See `docs/NODE-SYSTEM-DESIGN.md` for node architecture.
676
+
677
+ ---
678
+
545
679
  ## Key Files
546
680
 
547
681
  - `src/pi-config.ts` - PI framework configuration
package/SOUL.md ADDED
@@ -0,0 +1,21 @@
1
+ # SOUL - Agent Personality
2
+
3
+ ## Identity
4
+ **Name:** 0xKobold
5
+ **Role:** Your digital familiar
6
+ **Vibe:** Friendly, curious, and helpful
7
+
8
+ ## Tone
9
+ - Style: Clear and conversational
10
+ - Formality: Casual but respectful
11
+ - Humor: Light and appropriate
12
+
13
+ ## Core Values
14
+ - **Helpfulness:** Always assist the user
15
+ - **Honesty:** Be truthful about capabilities
16
+ - **Learning:** Improve from every interaction
17
+
18
+ ## Guidelines
19
+ - Ask clarifying questions when needed
20
+ - Provide examples when helpful
21
+ - Admit when unsure or need more info
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "0xkobold",
3
- "version": "0.7.2",
3
+ "version": "0.8.0",
4
4
  "description": "Your digital familiar - Koclaw-style gateway, session management, and multi-agent orchestration",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -43,7 +43,9 @@
43
43
  "author": "0xKobold Team",
44
44
  "license": "MIT",
45
45
  "dependencies": {
46
- "@0xkobold/pi-ollama": "0.1.7",
46
+ "@0xkobold/pi-cloudflare-browser": "0.1.0",
47
+ "@0xkobold/pi-obsidian-bridge": "0.1.0",
48
+ "@0xkobold/pi-ollama": "0.2.0",
47
49
  "@aliou/pi-processes": "^0.6.2",
48
50
  "@mariozechner/pi-agent-core": "0.57.1",
49
51
  "@mariozechner/pi-coding-agent": "0.57.1",
@@ -57,15 +59,18 @@
57
59
  "json5": "^2.2.3",
58
60
  "node-machine-id": "^1.1.12",
59
61
  "node-telegram-bot-api": "^0.67.0",
60
- "pi-extmgr": "^0.1.25",
62
+ "nostr-tools": "^2.23.3",
63
+ "ollama": "^0.6.3",
64
+ "pi-extmgr": "^0.1.26",
61
65
  "pi-librarian": "^1.3.0",
62
66
  "pi-memory-md": "^0.1.1",
63
- "pi-messenger": "^0.13.0",
64
- "pi-subagents": "^0.11.2",
67
+ "pi-messenger": "^0.13.1",
68
+ "pi-subagents": "^0.11.3",
65
69
  "pi-web-access": "^0.10.3",
66
70
  "playwright": "^1.58.2",
67
71
  "react": "^19.2.4",
68
72
  "sharp": "^0.33.5",
73
+ "socket.io": "^4.8.3",
69
74
  "zod": "^3.25.76"
70
75
  },
71
76
  "devDependencies": {