@sriinnu/runic 1.2.0 → 2.11.1

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 (586) hide show
  1. package/CHANGELOG.md +267 -0
  2. package/LICENSE +373 -21
  3. package/README.md +98 -84
  4. package/THIRD-PARTY-NOTICES.md +651 -0
  5. package/package.json +14 -4
  6. package/.swiftformat +0 -50
  7. package/.swiftlint.yml +0 -160
  8. package/CONTRIBUTING.md +0 -456
  9. package/Icon.icns +0 -0
  10. package/Icon.icon/Assets/runic.png +0 -0
  11. package/Icon.icon/icon.json +0 -36
  12. package/Package.resolved +0 -51
  13. package/Package.swift +0 -136
  14. package/Packages/Helix/LICENSE +0 -21
  15. package/Packages/Helix/Package.swift +0 -29
  16. package/Packages/Helix/README.md +0 -976
  17. package/Packages/Helix/Sources/Helix/Binding.swift +0 -111
  18. package/Packages/Helix/Sources/Helix/CommandParser.swift +0 -160
  19. package/Packages/Helix/Sources/Helix/CommandSignature.swift +0 -117
  20. package/Packages/Helix/Sources/Helix/ExpressibleFromArgument.swift +0 -72
  21. package/Packages/Helix/Sources/Helix/HelpGenerator.swift +0 -175
  22. package/Packages/Helix/Sources/Helix/NameSpecification.swift +0 -98
  23. package/Packages/Helix/Sources/Helix/ParsableCommand.swift +0 -204
  24. package/Packages/Helix/Sources/Helix/Platform/DarwinPlatformContext.swift +0 -44
  25. package/Packages/Helix/Sources/Helix/Platform/LinuxPlatformContext.swift +0 -34
  26. package/Packages/Helix/Sources/Helix/Platform/PlatformContext+Default.swift +0 -91
  27. package/Packages/Helix/Sources/Helix/Platform/PlatformContext.swift +0 -94
  28. package/Packages/Helix/Sources/Helix/Platform/PlatformPath.swift +0 -167
  29. package/Packages/Helix/Sources/Helix/Platform/Stdio.swift +0 -99
  30. package/Packages/Helix/Sources/Helix/Platform/WebPlatformContext.swift +0 -146
  31. package/Packages/Helix/Sources/Helix/Platform/WindowsPlatformContext.swift +0 -97
  32. package/Packages/Helix/Sources/Helix/Program.swift +0 -204
  33. package/Packages/Helix/Sources/Helix/PropertyWrappers.swift +0 -367
  34. package/Packages/Silo/LICENSE +0 -21
  35. package/Packages/Silo/Package.swift +0 -34
  36. package/Packages/Silo/README.md +0 -466
  37. package/Packages/Silo/Sources/Silo/BinaryCookiesReader.swift +0 -169
  38. package/Packages/Silo/Sources/Silo/BrowserCookieAnalytics.swift +0 -365
  39. package/Packages/Silo/Sources/Silo/BrowserCookieBackends.swift +0 -594
  40. package/Packages/Silo/Sources/Silo/BrowserCookieClient.swift +0 -326
  41. package/Packages/Silo/Sources/Silo/BrowserCookieExport.swift +0 -154
  42. package/Packages/Silo/Sources/Silo/BrowserCookieImport.swift +0 -119
  43. package/Packages/Silo/Sources/Silo/BrowserCookieMockStore.swift +0 -121
  44. package/Packages/Silo/Sources/Silo/BrowserCookieModels.swift +0 -391
  45. package/Packages/Silo/Sources/Silo/ChromiumCookieReader.swift +0 -240
  46. package/Packages/Silo/Sources/Silo/CryptoSupport.swift +0 -86
  47. package/Packages/Silo/Sources/Silo/FirefoxCookieReader.swift +0 -172
  48. package/Packages/Silo/Sources/Silo/LinuxChromiumCookieReader.swift +0 -172
  49. package/Packages/Silo/Sources/Silo/LinuxSecretService.swift +0 -105
  50. package/Packages/Silo/Sources/Silo/MacOSChromiumCookieReader.swift +0 -191
  51. package/Packages/Silo/Sources/Silo/SQLiteSnapshot.swift +0 -41
  52. package/Packages/Silo/Sources/Silo/WindowsChromiumCookieReader.swift +0 -110
  53. package/RuniciOS/App/RuniciOSApp.swift +0 -105
  54. package/RuniciOS/Core/iOSUsageStore.swift +0 -192
  55. package/RuniciOS/Views/ProviderDetailView.swift +0 -312
  56. package/RuniciOS/Views/ProviderListView.swift +0 -228
  57. package/RuniciOS/Widgets/LargeWidget.swift +0 -367
  58. package/RuniciOS/Widgets/LiveActivity.swift +0 -342
  59. package/RuniciOS/Widgets/LockScreenWidget.swift +0 -273
  60. package/RuniciOS/Widgets/MediumWidget.swift +0 -370
  61. package/RuniciOS/Widgets/RunicWidget.swift +0 -274
  62. package/RuniciOS/Widgets/SmallWidget.swift +0 -281
  63. package/RuniciOS/Widgets/WidgetModels.swift +0 -285
  64. package/RuniciOS/Widgets/WidgetTimeline.swift +0 -270
  65. package/Scripts/CREATION-SUMMARY.md +0 -367
  66. package/Scripts/DIRECTORY-STRUCTURE.md +0 -358
  67. package/Scripts/GETTING-STARTED-CHECKLIST.md +0 -364
  68. package/Scripts/INDEX.md +0 -365
  69. package/Scripts/QUICK-REFERENCE.md +0 -164
  70. package/Scripts/README-SCRIPTS.md +0 -926
  71. package/Scripts/build-android.sh +0 -526
  72. package/Scripts/build-ios.sh +0 -529
  73. package/Scripts/build-macos.sh +0 -603
  74. package/Scripts/build-windows.sh +0 -504
  75. package/Scripts/build_icon.sh +0 -49
  76. package/Scripts/changelog-to-html.sh +0 -89
  77. package/Scripts/check-release-assets.sh +0 -10
  78. package/Scripts/ci-config.yml +0 -474
  79. package/Scripts/compile_and_run.sh +0 -219
  80. package/Scripts/compile_and_run_adhoc.sh +0 -4
  81. package/Scripts/docs-list.mjs +0 -119
  82. package/Scripts/make_appcast.sh +0 -58
  83. package/Scripts/package_app.sh +0 -409
  84. package/Scripts/release-lib.sh +0 -214
  85. package/Scripts/release.sh +0 -76
  86. package/Scripts/setup-all.sh +0 -387
  87. package/Scripts/setup-ios.sh +0 -404
  88. package/Scripts/setup-react-native.sh +0 -523
  89. package/Scripts/sign-and-notarize.sh +0 -122
  90. package/Scripts/test_live_update.sh +0 -38
  91. package/Scripts/validate_changelog.sh +0 -23
  92. package/Scripts/verify_appcast.sh +0 -92
  93. package/Sources/Runic/About.swift +0 -93
  94. package/Sources/Runic/AppNotifications.swift +0 -115
  95. package/Sources/Runic/Controllers/StatusItemController+Actions.swift +0 -666
  96. package/Sources/Runic/Controllers/StatusItemController+Animation.swift +0 -518
  97. package/Sources/Runic/Controllers/StatusItemController+ChartSubmenus.swift +0 -810
  98. package/Sources/Runic/Controllers/StatusItemController+CustomProviders.swift +0 -87
  99. package/Sources/Runic/Controllers/StatusItemController+Menu.swift +0 -1407
  100. package/Sources/Runic/Controllers/StatusItemController+MenuCards.swift +0 -337
  101. package/Sources/Runic/Controllers/StatusItemController+MenuHelpers.swift +0 -395
  102. package/Sources/Runic/Controllers/StatusItemController.swift +0 -360
  103. package/Sources/Runic/Core/BudgetNotificationManager.swift +0 -80
  104. package/Sources/Runic/Core/Login/ClaudeLoginRunner.swift +0 -103
  105. package/Sources/Runic/Core/Login/CodexLoginRunner.swift +0 -154
  106. package/Sources/Runic/Core/Login/CursorLoginRunner.swift +0 -206
  107. package/Sources/Runic/Core/Login/GeminiLoginRunner.swift +0 -92
  108. package/Sources/Runic/Core/Rendering/IconRenderer.swift +0 -1216
  109. package/Sources/Runic/Core/Rendering/IconView.swift +0 -120
  110. package/Sources/Runic/Core/Rendering/ProviderBrandIcon.swift +0 -71
  111. package/Sources/Runic/Core/RunicAnimation.swift +0 -53
  112. package/Sources/Runic/Core/RunicColors.swift +0 -73
  113. package/Sources/Runic/Core/RunicCornerRadius.swift +0 -15
  114. package/Sources/Runic/Core/RunicSpacing.swift +0 -68
  115. package/Sources/Runic/Core/Stores/AuggieTokenStore.swift +0 -119
  116. package/Sources/Runic/Core/Stores/AzureOpenAITokenStore.swift +0 -119
  117. package/Sources/Runic/Core/Stores/CerebrasTokenStore.swift +0 -119
  118. package/Sources/Runic/Core/Stores/CohereTokenStore.swift +0 -119
  119. package/Sources/Runic/Core/Stores/CopilotTokenStore.swift +0 -119
  120. package/Sources/Runic/Core/Stores/CustomProviderStore.swift +0 -158
  121. package/Sources/Runic/Core/Stores/DeepSeekTokenStore.swift +0 -119
  122. package/Sources/Runic/Core/Stores/FireworksTokenStore.swift +0 -119
  123. package/Sources/Runic/Core/Stores/GroqTokenStore.swift +0 -119
  124. package/Sources/Runic/Core/Stores/KimiTokenStore.swift +0 -119
  125. package/Sources/Runic/Core/Stores/MiniMaxCookieHeaderStore.swift +0 -119
  126. package/Sources/Runic/Core/Stores/MiniMaxGroupIDStore.swift +0 -119
  127. package/Sources/Runic/Core/Stores/MiniMaxTokenStore.swift +0 -119
  128. package/Sources/Runic/Core/Stores/MistralTokenStore.swift +0 -119
  129. package/Sources/Runic/Core/Stores/OpenRouterTokenStore.swift +0 -119
  130. package/Sources/Runic/Core/Stores/PerplexityTokenStore.swift +0 -119
  131. package/Sources/Runic/Core/Stores/ProviderToggleStore.swift +0 -30
  132. package/Sources/Runic/Core/Stores/QwenTokenStore.swift +0 -119
  133. package/Sources/Runic/Core/Stores/SambaNovaTokenStore.swift +0 -119
  134. package/Sources/Runic/Core/Stores/SettingsStore.swift +0 -1711
  135. package/Sources/Runic/Core/Stores/TogetherTokenStore.swift +0 -119
  136. package/Sources/Runic/Core/Stores/UsageStore+Accessors.swift +0 -20
  137. package/Sources/Runic/Core/Stores/UsageStore+Status.swift +0 -189
  138. package/Sources/Runic/Core/Stores/UsageStore+TokenCost.swift +0 -33
  139. package/Sources/Runic/Core/Stores/UsageStore+WidgetSnapshot.swift +0 -67
  140. package/Sources/Runic/Core/Stores/UsageStore.swift +0 -3605
  141. package/Sources/Runic/Core/Stores/XAITokenStore.swift +0 -119
  142. package/Sources/Runic/Core/Stores/ZaiTokenStore.swift +0 -118
  143. package/Sources/Runic/Core/UsageExporter.swift +0 -193
  144. package/Sources/Runic/Date+RelativeDescription.swift +0 -21
  145. package/Sources/Runic/HiddenWindowView.swift +0 -32
  146. package/Sources/Runic/InstallOrigin.swift +0 -9
  147. package/Sources/Runic/KeyboardShortcuts+Names.swift +0 -6
  148. package/Sources/Runic/MouseLocationReader.swift +0 -65
  149. package/Sources/Runic/Notifications+Runic.swift +0 -6
  150. package/Sources/Runic/OpenAICreditsPurchaseWindowController.swift +0 -503
  151. package/Sources/Runic/ProviderRegistry.swift +0 -100
  152. package/Sources/Runic/ProviderSwitcherButtons.swift +0 -267
  153. package/Sources/Runic/Providers/Antigravity/AntigravityLoginFlow.swift +0 -11
  154. package/Sources/Runic/Providers/Antigravity/AntigravityProviderImplementation.swift +0 -14
  155. package/Sources/Runic/Providers/Auggie/AuggieProviderImplementation.swift +0 -24
  156. package/Sources/Runic/Providers/Azure/AzureProviderImplementation.swift +0 -52
  157. package/Sources/Runic/Providers/Bedrock/BedrockProviderImplementation.swift +0 -42
  158. package/Sources/Runic/Providers/Cerebras/CerebrasProviderImplementation.swift +0 -24
  159. package/Sources/Runic/Providers/Claude/ClaudeLoginFlow.swift +0 -26
  160. package/Sources/Runic/Providers/Claude/ClaudeProviderImplementation.swift +0 -14
  161. package/Sources/Runic/Providers/Codex/CodexLoginFlow.swift +0 -18
  162. package/Sources/Runic/Providers/Codex/CodexProviderImplementation.swift +0 -15
  163. package/Sources/Runic/Providers/Cohere/CohereProviderImplementation.swift +0 -24
  164. package/Sources/Runic/Providers/Copilot/CopilotLoginFlow.swift +0 -193
  165. package/Sources/Runic/Providers/Copilot/CopilotProviderImplementation.swift +0 -110
  166. package/Sources/Runic/Providers/Cursor/CursorLoginFlow.swift +0 -28
  167. package/Sources/Runic/Providers/Cursor/CursorProviderImplementation.swift +0 -15
  168. package/Sources/Runic/Providers/DeepSeek/DeepSeekProviderImplementation.swift +0 -24
  169. package/Sources/Runic/Providers/Factory/FactoryLoginFlow.swift +0 -12
  170. package/Sources/Runic/Providers/Factory/FactoryProviderImplementation.swift +0 -15
  171. package/Sources/Runic/Providers/Fireworks/FireworksProviderImplementation.swift +0 -24
  172. package/Sources/Runic/Providers/Gemini/GeminiLoginFlow.swift +0 -20
  173. package/Sources/Runic/Providers/Gemini/GeminiProviderImplementation.swift +0 -15
  174. package/Sources/Runic/Providers/Groq/GroqProviderImplementation.swift +0 -24
  175. package/Sources/Runic/Providers/Kimi/KimiProviderImplementation.swift +0 -24
  176. package/Sources/Runic/Providers/MiniMax/MiniMaxProviderImplementation.swift +0 -32
  177. package/Sources/Runic/Providers/Mistral/MistralProviderImplementation.swift +0 -24
  178. package/Sources/Runic/Providers/OpenRouter/OpenRouterProviderImplementation.swift +0 -24
  179. package/Sources/Runic/Providers/Perplexity/PerplexityProviderImplementation.swift +0 -24
  180. package/Sources/Runic/Providers/SambaNova/SambaNovaProviderImplementation.swift +0 -24
  181. package/Sources/Runic/Providers/Shared/ProviderCatalog.swift +0 -15
  182. package/Sources/Runic/Providers/Shared/ProviderImplementation.swift +0 -48
  183. package/Sources/Runic/Providers/Shared/ProviderImplementationRegistry.swift +0 -66
  184. package/Sources/Runic/Providers/Shared/ProviderLoginFlow.swift +0 -12
  185. package/Sources/Runic/Providers/Shared/ProviderSettingsDescriptors.swift +0 -99
  186. package/Sources/Runic/Providers/Shared/SystemSettingsLinks.swift +0 -18
  187. package/Sources/Runic/Providers/Together/TogetherProviderImplementation.swift +0 -24
  188. package/Sources/Runic/Providers/XAI/XAIProviderImplementation.swift +0 -24
  189. package/Sources/Runic/Providers/Zai/ZaiProviderImplementation.swift +0 -24
  190. package/Sources/Runic/Resources/ProviderIcon-antigravity.svg +0 -2
  191. package/Sources/Runic/Resources/ProviderIcon-auggie.svg +0 -3
  192. package/Sources/Runic/Resources/ProviderIcon-azure.svg +0 -5
  193. package/Sources/Runic/Resources/ProviderIcon-bedrock.svg +0 -7
  194. package/Sources/Runic/Resources/ProviderIcon-cerebras.svg +0 -3
  195. package/Sources/Runic/Resources/ProviderIcon-claude.svg +0 -1
  196. package/Sources/Runic/Resources/ProviderIcon-codex.svg +0 -1
  197. package/Sources/Runic/Resources/ProviderIcon-cohere.svg +0 -3
  198. package/Sources/Runic/Resources/ProviderIcon-copilot.svg +0 -1
  199. package/Sources/Runic/Resources/ProviderIcon-cursor.svg +0 -3
  200. package/Sources/Runic/Resources/ProviderIcon-deepseek.svg +0 -4
  201. package/Sources/Runic/Resources/ProviderIcon-factory.svg +0 -3
  202. package/Sources/Runic/Resources/ProviderIcon-fireworks.svg +0 -3
  203. package/Sources/Runic/Resources/ProviderIcon-gemini.svg +0 -1
  204. package/Sources/Runic/Resources/ProviderIcon-groq.svg +0 -1
  205. package/Sources/Runic/Resources/ProviderIcon-kimi.svg +0 -4
  206. package/Sources/Runic/Resources/ProviderIcon-minimax.svg +0 -1
  207. package/Sources/Runic/Resources/ProviderIcon-mistral.svg +0 -5
  208. package/Sources/Runic/Resources/ProviderIcon-openrouter.svg +0 -7
  209. package/Sources/Runic/Resources/ProviderIcon-perplexity.svg +0 -4
  210. package/Sources/Runic/Resources/ProviderIcon-qwen.svg +0 -9
  211. package/Sources/Runic/Resources/ProviderIcon-sambanova.svg +0 -4
  212. package/Sources/Runic/Resources/ProviderIcon-together.svg +0 -5
  213. package/Sources/Runic/Resources/ProviderIcon-vertexai.svg +0 -17
  214. package/Sources/Runic/Resources/ProviderIcon-xai.svg +0 -3
  215. package/Sources/Runic/Resources/ProviderIcon-zai.svg +0 -5
  216. package/Sources/Runic/Resources/RunicMenubarIcon.svg +0 -7
  217. package/Sources/Runic/Resources/provider-context-windows.json +0 -20
  218. package/Sources/Runic/RunicApp.swift +0 -357
  219. package/Sources/Runic/SessionQuotaNotifications.swift +0 -58
  220. package/Sources/Runic/UsagePaceText.swift +0 -52
  221. package/Sources/Runic/UsageProgressBar.swift +0 -224
  222. package/Sources/Runic/Utilities/DisplayLink.swift +0 -96
  223. package/Sources/Runic/Utilities/LoadingPattern.swift +0 -60
  224. package/Sources/Runic/Utilities/PerformanceConstants.swift +0 -85
  225. package/Sources/Runic/Views/Menu/AlertsMenuView.swift +0 -256
  226. package/Sources/Runic/Views/Menu/ChartPanelStyle.swift +0 -22
  227. package/Sources/Runic/Views/Menu/CostComparativeChartMenuView.swift +0 -275
  228. package/Sources/Runic/Views/Menu/CostHistoryChartMenuView.swift +0 -377
  229. package/Sources/Runic/Views/Menu/CreditsHistoryChartMenuView.swift +0 -312
  230. package/Sources/Runic/Views/Menu/EfficiencyMetricsMenuView.swift +0 -312
  231. package/Sources/Runic/Views/Menu/HeroStatCardsMenuView.swift +0 -228
  232. package/Sources/Runic/Views/Menu/HourlyActivityChartMenuView.swift +0 -228
  233. package/Sources/Runic/Views/Menu/InlineUsageChartView.swift +0 -155
  234. package/Sources/Runic/Views/Menu/MenuCardEntranceModifier.swift +0 -64
  235. package/Sources/Runic/Views/Menu/MenuCardSidebarView.swift +0 -268
  236. package/Sources/Runic/Views/Menu/MenuCardSkeletonView.swift +0 -104
  237. package/Sources/Runic/Views/Menu/MenuCardView.swift +0 -1900
  238. package/Sources/Runic/Views/Menu/MenuContent.swift +0 -150
  239. package/Sources/Runic/Views/Menu/MenuDescriptor.swift +0 -369
  240. package/Sources/Runic/Views/Menu/MenuHighlightStyle.swift +0 -42
  241. package/Sources/Runic/Views/Menu/ModelBreakdownMenuView.swift +0 -235
  242. package/Sources/Runic/Views/Menu/OverviewMenuView.swift +0 -278
  243. package/Sources/Runic/Views/Menu/ProjectBreakdownMenuView.swift +0 -209
  244. package/Sources/Runic/Views/Menu/ProjectBudgetMenuView.swift +0 -220
  245. package/Sources/Runic/Views/Menu/ProviderTabBarView.swift +0 -88
  246. package/Sources/Runic/Views/Menu/SubscriptionUtilizationChartMenuView.swift +0 -201
  247. package/Sources/Runic/Views/Menu/UsageBreakdownChartMenuView.swift +0 -398
  248. package/Sources/Runic/Views/Menu/UsageHeatmapMenuView.swift +0 -232
  249. package/Sources/Runic/Views/Menu/UsageTimelineChartMenuView.swift +0 -364
  250. package/Sources/Runic/Views/Menu/UsageWindowComparisonChartMenuView.swift +0 -190
  251. package/Sources/Runic/Views/Menu/WeeklyActivityChartMenuView.swift +0 -132
  252. package/Sources/Runic/Views/Performance/PerformanceDashboardView.swift +0 -618
  253. package/Sources/Runic/Views/Preferences/LiquidComponents.swift +0 -305
  254. package/Sources/Runic/Views/Preferences/PreferencesAboutPane.swift +0 -271
  255. package/Sources/Runic/Views/Preferences/PreferencesAdvancedPane.swift +0 -268
  256. package/Sources/Runic/Views/Preferences/PreferencesAlertsPane.swift +0 -422
  257. package/Sources/Runic/Views/Preferences/PreferencesAnalyticsPane.swift +0 -641
  258. package/Sources/Runic/Views/Preferences/PreferencesBudgetsPane.swift +0 -344
  259. package/Sources/Runic/Views/Preferences/PreferencesComponents.swift +0 -230
  260. package/Sources/Runic/Views/Preferences/PreferencesCustomProvidersPane.swift +0 -322
  261. package/Sources/Runic/Views/Preferences/PreferencesDebugPane.swift +0 -469
  262. package/Sources/Runic/Views/Preferences/PreferencesGeneralPane.swift +0 -231
  263. package/Sources/Runic/Views/Preferences/PreferencesHelpPane.swift +0 -50
  264. package/Sources/Runic/Views/Preferences/PreferencesIntegrationsPane.swift +0 -567
  265. package/Sources/Runic/Views/Preferences/PreferencesPerformancePane.swift +0 -288
  266. package/Sources/Runic/Views/Preferences/PreferencesProvidersPane.swift +0 -3435
  267. package/Sources/Runic/Views/Preferences/PreferencesSelection.swift +0 -25
  268. package/Sources/Runic/Views/Preferences/PreferencesSyncPane.swift +0 -59
  269. package/Sources/Runic/Views/Preferences/PreferencesView.swift +0 -206
  270. package/Sources/Runic/Views/Rating/QualityRatingView.swift +0 -238
  271. package/Sources/Runic/Views/Team/TeamDashboardView.swift +0 -371
  272. package/Sources/Runic/Views/Team/TeamInviteSheet.swift +0 -175
  273. package/Sources/Runic/Views/Team/TeamManagementView.swift +0 -761
  274. package/Sources/Runic/Views/Team/TeamMemberRow.swift +0 -181
  275. package/Sources/RunicCLI/CLIEntry.swift +0 -942
  276. package/Sources/RunicCLI/CLIRenderer.swift +0 -87
  277. package/Sources/RunicCLI/Commands/EnhancedUsageCommand.swift +0 -588
  278. package/Sources/RunicCLI/Commands/ModelsCommand.swift +0 -362
  279. package/Sources/RunicCLI/Commands/ProjectsCommand.swift +0 -439
  280. package/Sources/RunicCLI/Commands/ResetCommand.swift +0 -429
  281. package/Sources/RunicCLI/Commands/UsageLedgerSourceFactory.swift +0 -168
  282. package/Sources/RunicClaudeWatchdog/main.swift +0 -122
  283. package/Sources/RunicClaudeWebProbe/main.swift +0 -62
  284. package/Sources/RunicCore/AlertRuleStore.swift +0 -187
  285. package/Sources/RunicCore/BrowserCookieImportOrder.swift +0 -25
  286. package/Sources/RunicCore/CopilotUsageModels.swift +0 -84
  287. package/Sources/RunicCore/CostUsageFetcher.swift +0 -119
  288. package/Sources/RunicCore/CostUsageModels.swift +0 -479
  289. package/Sources/RunicCore/CreditsModels.swift +0 -50
  290. package/Sources/RunicCore/CustomProviders/CustomProviderModels.swift +0 -269
  291. package/Sources/RunicCore/CustomProviders/GenericProviderFetcher.swift +0 -633
  292. package/Sources/RunicCore/CustomProviders/ProviderTemplates.swift +0 -500
  293. package/Sources/RunicCore/Host/PTY/TTYCommandRunner.swift +0 -679
  294. package/Sources/RunicCore/Host/Process/SubprocessRunner.swift +0 -135
  295. package/Sources/RunicCore/Integrations/GitHubIntegration.swift +0 -173
  296. package/Sources/RunicCore/Logging/JSONStderrLogHandler.swift +0 -79
  297. package/Sources/RunicCore/Logging/OSLogLogHandler.swift +0 -86
  298. package/Sources/RunicCore/Logging/RunicLog.swift +0 -123
  299. package/Sources/RunicCore/Models/EnhancedUsageModels.swift +0 -371
  300. package/Sources/RunicCore/OpenAIDashboardModels.swift +0 -210
  301. package/Sources/RunicCore/OpenAIWeb/OpenAIDashboardBrowserCookieImporter.swift +0 -676
  302. package/Sources/RunicCore/OpenAIWeb/OpenAIDashboardFetcher.swift +0 -492
  303. package/Sources/RunicCore/OpenAIWeb/OpenAIDashboardNavigationDelegate.swift +0 -51
  304. package/Sources/RunicCore/OpenAIWeb/OpenAIDashboardParser.swift +0 -483
  305. package/Sources/RunicCore/OpenAIWeb/OpenAIDashboardScrapeScript.swift +0 -558
  306. package/Sources/RunicCore/OpenAIWeb/OpenAIDashboardWebViewCache.swift +0 -204
  307. package/Sources/RunicCore/OpenAIWeb/OpenAIDashboardWebsiteDataStore.swift +0 -78
  308. package/Sources/RunicCore/PathEnvironment.swift +0 -482
  309. package/Sources/RunicCore/Performance/PerformanceModels.swift +0 -371
  310. package/Sources/RunicCore/Performance/PerformanceStorageImpl.swift +0 -409
  311. package/Sources/RunicCore/Policy/UsagePolicyEngine.swift +0 -178
  312. package/Sources/RunicCore/ProjectBudgetStore.swift +0 -99
  313. package/Sources/RunicCore/ProviderCostSnapshot.swift +0 -29
  314. package/Sources/RunicCore/Providers/Antigravity/AntigravityProviderDescriptor.swift +0 -66
  315. package/Sources/RunicCore/Providers/Antigravity/AntigravityStatusProbe.swift +0 -685
  316. package/Sources/RunicCore/Providers/Auggie/AuggieProviderDescriptor.swift +0 -83
  317. package/Sources/RunicCore/Providers/Auggie/AuggieUsageFetcher.swift +0 -142
  318. package/Sources/RunicCore/Providers/Azure/AzureProviderDescriptor.swift +0 -141
  319. package/Sources/RunicCore/Providers/Azure/AzureUsageFetcher.swift +0 -188
  320. package/Sources/RunicCore/Providers/Bedrock/BedrockProviderDescriptor.swift +0 -126
  321. package/Sources/RunicCore/Providers/Bedrock/BedrockUsageFetcher.swift +0 -168
  322. package/Sources/RunicCore/Providers/Cerebras/CerebrasProviderDescriptor.swift +0 -84
  323. package/Sources/RunicCore/Providers/Cerebras/CerebrasUsageFetcher.swift +0 -75
  324. package/Sources/RunicCore/Providers/Claude/ClaudeCLISession.swift +0 -332
  325. package/Sources/RunicCore/Providers/Claude/ClaudeOAuth/ClaudeOAuthCredentials.swift +0 -180
  326. package/Sources/RunicCore/Providers/Claude/ClaudeOAuth/ClaudeOAuthUsageFetcher.swift +0 -137
  327. package/Sources/RunicCore/Providers/Claude/ClaudeProviderDescriptor.swift +0 -207
  328. package/Sources/RunicCore/Providers/Claude/ClaudeStatusProbe.swift +0 -654
  329. package/Sources/RunicCore/Providers/Claude/ClaudeUsageDataSource.swift +0 -28
  330. package/Sources/RunicCore/Providers/Claude/ClaudeUsageFetcher.swift +0 -480
  331. package/Sources/RunicCore/Providers/Claude/ClaudeWeb/ClaudeWebAPIFetcher.swift +0 -780
  332. package/Sources/RunicCore/Providers/Codex/CodexOAuth/CodexOAuthCredentials.swift +0 -147
  333. package/Sources/RunicCore/Providers/Codex/CodexOAuth/CodexOAuthUsageFetcher.swift +0 -280
  334. package/Sources/RunicCore/Providers/Codex/CodexOAuth/CodexTokenRefresher.swift +0 -100
  335. package/Sources/RunicCore/Providers/Codex/CodexProviderDescriptor.swift +0 -243
  336. package/Sources/RunicCore/Providers/Codex/CodexStatusProbe.swift +0 -125
  337. package/Sources/RunicCore/Providers/Codex/CodexUsageDataSource.swift +0 -24
  338. package/Sources/RunicCore/Providers/Codex/CodexWebDashboardStrategy.swift +0 -181
  339. package/Sources/RunicCore/Providers/Cohere/CohereProviderDescriptor.swift +0 -83
  340. package/Sources/RunicCore/Providers/Cohere/CohereUsageFetcher.swift +0 -85
  341. package/Sources/RunicCore/Providers/Copilot/CopilotDeviceFlow.swift +0 -123
  342. package/Sources/RunicCore/Providers/Copilot/CopilotGitHubCLITokenReader.swift +0 -114
  343. package/Sources/RunicCore/Providers/Copilot/CopilotProviderDescriptor.swift +0 -100
  344. package/Sources/RunicCore/Providers/Copilot/CopilotUsageFetcher.swift +0 -291
  345. package/Sources/RunicCore/Providers/Copilot/CopilotVSCodeTokenReader.swift +0 -386
  346. package/Sources/RunicCore/Providers/Cursor/CursorProviderDescriptor.swift +0 -65
  347. package/Sources/RunicCore/Providers/Cursor/CursorStatusProbe.swift +0 -595
  348. package/Sources/RunicCore/Providers/DeepSeek/DeepSeekProviderDescriptor.swift +0 -85
  349. package/Sources/RunicCore/Providers/DeepSeek/DeepSeekUsageFetcher.swift +0 -108
  350. package/Sources/RunicCore/Providers/Factory/FactoryLocalStorageImporter.swift +0 -398
  351. package/Sources/RunicCore/Providers/Factory/FactoryProviderDescriptor.swift +0 -65
  352. package/Sources/RunicCore/Providers/Factory/FactoryStatusProbe.swift +0 -1276
  353. package/Sources/RunicCore/Providers/Fireworks/FireworksProviderDescriptor.swift +0 -84
  354. package/Sources/RunicCore/Providers/Fireworks/FireworksUsageFetcher.swift +0 -75
  355. package/Sources/RunicCore/Providers/Gemini/GeminiProviderDescriptor.swift +0 -65
  356. package/Sources/RunicCore/Providers/Gemini/GeminiStatusProbe.swift +0 -836
  357. package/Sources/RunicCore/Providers/Groq/GroqProviderDescriptor.swift +0 -83
  358. package/Sources/RunicCore/Providers/Groq/GroqUsageFetcher.swift +0 -71
  359. package/Sources/RunicCore/Providers/Kimi/KimiProviderDescriptor.swift +0 -83
  360. package/Sources/RunicCore/Providers/Kimi/KimiUsageFetcher.swift +0 -77
  361. package/Sources/RunicCore/Providers/MiniMax/MiniMaxProviderDescriptor.swift +0 -92
  362. package/Sources/RunicCore/Providers/MiniMax/MiniMaxSettingsReader.swift +0 -54
  363. package/Sources/RunicCore/Providers/MiniMax/MiniMaxUsageFetcher.swift +0 -168
  364. package/Sources/RunicCore/Providers/MiniMax/MiniMaxWebUsageFetcher.swift +0 -911
  365. package/Sources/RunicCore/Providers/Mistral/MistralProviderDescriptor.swift +0 -84
  366. package/Sources/RunicCore/Providers/Mistral/MistralUsageFetcher.swift +0 -75
  367. package/Sources/RunicCore/Providers/OpenRouter/OpenRouterProviderDescriptor.swift +0 -87
  368. package/Sources/RunicCore/Providers/OpenRouter/OpenRouterUsageFetcher.swift +0 -203
  369. package/Sources/RunicCore/Providers/Perplexity/PerplexityProviderDescriptor.swift +0 -84
  370. package/Sources/RunicCore/Providers/Perplexity/PerplexityUsageFetcher.swift +0 -75
  371. package/Sources/RunicCore/Providers/ProviderBranding.swift +0 -25
  372. package/Sources/RunicCore/Providers/ProviderCLIConfig.swift +0 -17
  373. package/Sources/RunicCore/Providers/ProviderDescriptor.swift +0 -129
  374. package/Sources/RunicCore/Providers/ProviderFetchPlan.swift +0 -263
  375. package/Sources/RunicCore/Providers/ProviderSettingsSnapshot.swift +0 -98
  376. package/Sources/RunicCore/Providers/ProviderTokenResolver.swift +0 -501
  377. package/Sources/RunicCore/Providers/ProviderVersionDetector.swift +0 -68
  378. package/Sources/RunicCore/Providers/Providers.swift +0 -184
  379. package/Sources/RunicCore/Providers/Qwen/QwenProviderDescriptor.swift +0 -84
  380. package/Sources/RunicCore/Providers/Qwen/QwenSettingsReader.swift +0 -30
  381. package/Sources/RunicCore/Providers/Qwen/QwenUsageStats.swift +0 -315
  382. package/Sources/RunicCore/Providers/SambaNova/SambaNovaProviderDescriptor.swift +0 -84
  383. package/Sources/RunicCore/Providers/SambaNova/SambaNovaUsageFetcher.swift +0 -75
  384. package/Sources/RunicCore/Providers/Together/TogetherProviderDescriptor.swift +0 -83
  385. package/Sources/RunicCore/Providers/Together/TogetherUsageFetcher.swift +0 -75
  386. package/Sources/RunicCore/Providers/VertexAI/VertexAIProviderDescriptor.swift +0 -123
  387. package/Sources/RunicCore/Providers/VertexAI/VertexAISettingsReader.swift +0 -48
  388. package/Sources/RunicCore/Providers/VertexAI/VertexAIUsageFetcher.swift +0 -144
  389. package/Sources/RunicCore/Providers/XAI/XAIProviderDescriptor.swift +0 -83
  390. package/Sources/RunicCore/Providers/XAI/XAIUsageFetcher.swift +0 -75
  391. package/Sources/RunicCore/Providers/Zai/ZaiProviderDescriptor.swift +0 -72
  392. package/Sources/RunicCore/Providers/Zai/ZaiSettingsReader.swift +0 -41
  393. package/Sources/RunicCore/Providers/Zai/ZaiUsageStats.swift +0 -718
  394. package/Sources/RunicCore/Sync/BackgroundSyncManager.swift +0 -385
  395. package/Sources/RunicCore/Sync/SyncConflictResolver.swift +0 -310
  396. package/Sources/RunicCore/Sync/SyncProtocol.swift +0 -288
  397. package/Sources/RunicCore/Sync/SyncRecord.swift +0 -405
  398. package/Sources/RunicCore/Sync/SyncUsageExample.swift +0 -294
  399. package/Sources/RunicCore/Sync/TeamSyncRecords.swift +0 -775
  400. package/Sources/RunicCore/Sync/iCloudSyncEngine.swift +0 -333
  401. package/Sources/RunicCore/Team/TeamModels.swift +0 -583
  402. package/Sources/RunicCore/Team/TeamShowbackExporter.swift +0 -495
  403. package/Sources/RunicCore/Team/TeamStore.swift +0 -792
  404. package/Sources/RunicCore/TextParsing.swift +0 -55
  405. package/Sources/RunicCore/UsageFetcher.swift +0 -694
  406. package/Sources/RunicCore/UsageFormatter.swift +0 -410
  407. package/Sources/RunicCore/UsageLedger/ClaudeUsageLogSource.swift +0 -427
  408. package/Sources/RunicCore/UsageLedger/CodexUsageLogSource.swift +0 -494
  409. package/Sources/RunicCore/UsageLedger/LedgerCache.swift +0 -158
  410. package/Sources/RunicCore/UsageLedger/OTelGenAILedgerAdapter.swift +0 -550
  411. package/Sources/RunicCore/UsageLedger/UsageLedger.swift +0 -29
  412. package/Sources/RunicCore/UsageLedger/UsageLedgerAggregator.swift +0 -660
  413. package/Sources/RunicCore/UsageLedger/UsageLedgerInsightsAdvisor.swift +0 -209
  414. package/Sources/RunicCore/UsageLedger/UsageLedgerModels.swift +0 -417
  415. package/Sources/RunicCore/UsageLedger/UsageLedgerProjectIdentity.swift +0 -245
  416. package/Sources/RunicCore/UsagePace.swift +0 -81
  417. package/Sources/RunicCore/Vendored/CostUsage/CostUsageCache.swift +0 -73
  418. package/Sources/RunicCore/Vendored/CostUsage/CostUsageJsonl.swift +0 -74
  419. package/Sources/RunicCore/Vendored/CostUsage/CostUsagePricing.swift +0 -208
  420. package/Sources/RunicCore/Vendored/CostUsage/CostUsageScanner+Claude.swift +0 -455
  421. package/Sources/RunicCore/Vendored/CostUsage/CostUsageScanner+Timestamp.swift +0 -132
  422. package/Sources/RunicCore/Vendored/CostUsage/CostUsageScanner.swift +0 -589
  423. package/Sources/RunicCore/WidgetSnapshot.swift +0 -183
  424. package/Sources/RunicMacroSupport/ProviderRegistrationMacros.swift +0 -14
  425. package/Sources/RunicMacros/ProviderRegistrationMacros.swift +0 -216
  426. package/Sources/RunicWidget/RunicWidgetBundle.swift +0 -79
  427. package/Sources/RunicWidget/RunicWidgetProvider.swift +0 -283
  428. package/Sources/RunicWidget/RunicWidgetViews.swift +0 -680
  429. package/Tests/RunicTests/AntigravityStatusProbeTests.swift +0 -50
  430. package/Tests/RunicTests/AppDelegateTests.swift +0 -43
  431. package/Tests/RunicTests/BrowserCookieOrderLabelTests.swift +0 -22
  432. package/Tests/RunicTests/CLIArgumentParsingTests.swift +0 -70
  433. package/Tests/RunicTests/CLICostTests.swift +0 -65
  434. package/Tests/RunicTests/CLIProviderSelectionTests.swift +0 -22
  435. package/Tests/RunicTests/CLISnapshotTests.swift +0 -72
  436. package/Tests/RunicTests/CLIWebFallbackTests.swift +0 -58
  437. package/Tests/RunicTests/ClaudeOAuthTests.swift +0 -164
  438. package/Tests/RunicTests/ClaudeResilienceTests.swift +0 -30
  439. package/Tests/RunicTests/ClaudeUsageTests.swift +0 -370
  440. package/Tests/RunicTests/CodexOAuthTests.swift +0 -122
  441. package/Tests/RunicTests/CodexUsageLogSourceTests.swift +0 -82
  442. package/Tests/RunicTests/CopilotTokenResolverTests.swift +0 -75
  443. package/Tests/RunicTests/CopilotVSCodeTokenReaderTests.swift +0 -75
  444. package/Tests/RunicTests/CostUsageDecodingTests.swift +0 -394
  445. package/Tests/RunicTests/CostUsagePricingTests.swift +0 -50
  446. package/Tests/RunicTests/CostUsageScannerTests.swift +0 -700
  447. package/Tests/RunicTests/CursorStatusProbeTests.swift +0 -323
  448. package/Tests/RunicTests/FactoryStatusProbeTests.swift +0 -69
  449. package/Tests/RunicTests/GeminiAPITestHelpers.swift +0 -94
  450. package/Tests/RunicTests/GeminiLoginAlertTests.swift +0 -28
  451. package/Tests/RunicTests/GeminiStatusProbeAPITests.swift +0 -283
  452. package/Tests/RunicTests/GeminiStatusProbePlanTests.swift +0 -279
  453. package/Tests/RunicTests/GeminiStatusProbeTests.swift +0 -233
  454. package/Tests/RunicTests/GeminiTestEnvironment.swift +0 -87
  455. package/Tests/RunicTests/GoogleWorkspaceStatusTests.swift +0 -73
  456. package/Tests/RunicTests/InstallOriginTests.swift +0 -18
  457. package/Tests/RunicTests/KeyboardShortcutsBundleTests.swift +0 -9
  458. package/Tests/RunicTests/LiveAccountTests.swift +0 -24
  459. package/Tests/RunicTests/LoadingPatternTests.swift +0 -35
  460. package/Tests/RunicTests/MenuCardModelTests.swift +0 -545
  461. package/Tests/RunicTests/MiniMaxCookieHeaderStoreTestSupport.swift +0 -8
  462. package/Tests/RunicTests/MiniMaxGroupIDStoreTestSupport.swift +0 -8
  463. package/Tests/RunicTests/MiniMaxParsingTests.swift +0 -68
  464. package/Tests/RunicTests/MiniMaxTokenStoreTestSupport.swift +0 -8
  465. package/Tests/RunicTests/OTelGenAILedgerAdapterTests.swift +0 -112
  466. package/Tests/RunicTests/OpenAIDashboardBrowserCookieImporterTests.swift +0 -17
  467. package/Tests/RunicTests/OpenAIDashboardFetcherCreditsWaitTests.swift +0 -75
  468. package/Tests/RunicTests/OpenAIDashboardOffscreenHostTests.swift +0 -27
  469. package/Tests/RunicTests/OpenAIDashboardParserTests.swift +0 -134
  470. package/Tests/RunicTests/OpenAIWebAccountSwitchTests.swift +0 -53
  471. package/Tests/RunicTests/OpenRouterTokenStoreTestSupport.swift +0 -92
  472. package/Tests/RunicTests/PathBuilderTests.swift +0 -237
  473. package/Tests/RunicTests/ProviderFetchPipelineTests.swift +0 -160
  474. package/Tests/RunicTests/ProviderIconResourcesTests.swift +0 -38
  475. package/Tests/RunicTests/ProviderMetadataStatusLinkTests.swift +0 -16
  476. package/Tests/RunicTests/ProviderRegistryTests.swift +0 -29
  477. package/Tests/RunicTests/ProviderSettingsDescriptorTests.swift +0 -202
  478. package/Tests/RunicTests/ProviderToggleStoreTests.swift +0 -51
  479. package/Tests/RunicTests/RunicTests.swift +0 -120
  480. package/Tests/RunicTests/SessionQuotaNotificationLogicTests.swift +0 -36
  481. package/Tests/RunicTests/SettingsStoreTests.swift +0 -161
  482. package/Tests/RunicTests/StatusItemAnimationTests.swift +0 -49
  483. package/Tests/RunicTests/StatusMenuTests.swift +0 -434
  484. package/Tests/RunicTests/StatusProbeTests.swift +0 -377
  485. package/Tests/RunicTests/SubprocessRunnerTests.swift +0 -20
  486. package/Tests/RunicTests/SubscriptionDetectionTests.swift +0 -65
  487. package/Tests/RunicTests/TTYCommandRunnerTests.swift +0 -148
  488. package/Tests/RunicTests/TTYIntegrationTests.swift +0 -41
  489. package/Tests/RunicTests/TeamShowbackExporterTests.swift +0 -159
  490. package/Tests/RunicTests/TextParsingTests.swift +0 -12
  491. package/Tests/RunicTests/UsageFormatterTests.swift +0 -112
  492. package/Tests/RunicTests/UsageLedgerAnomalyDetectionTests.swift +0 -172
  493. package/Tests/RunicTests/UsageLedgerForecastTests.swift +0 -213
  494. package/Tests/RunicTests/UsageLedgerInsightsAdvisorTests.swift +0 -83
  495. package/Tests/RunicTests/UsageLedgerProjectNameTests.swift +0 -170
  496. package/Tests/RunicTests/UsagePaceTests.swift +0 -77
  497. package/Tests/RunicTests/UsagePaceTextTests.swift +0 -109
  498. package/Tests/RunicTests/UsagePolicyEngineTests.swift +0 -91
  499. package/Tests/RunicTests/WidgetSnapshotTests.swift +0 -45
  500. package/Tests/RunicTests/ZaiProviderTests.swift +0 -61
  501. package/Tests/RunicTests/ZaiTokenStoreTestSupport.swift +0 -6
  502. package/TestsLinux/PlatformGatingTests.swift +0 -46
  503. package/appcast.xml +0 -144
  504. package/assets/logo-concept-stack.svg +0 -24
  505. package/assets/logo-minimal-bars.svg +0 -15
  506. package/assets/logo.svg +0 -20
  507. package/assets/logo2.svg +0 -43
  508. package/bin/docs-list +0 -5
  509. package/build-and-run.sh +0 -369
  510. package/docs/.nojekyll +0 -1
  511. package/docs/CNAME +0 -1
  512. package/docs/antigravity.md +0 -75
  513. package/docs/architecture.md +0 -32
  514. package/docs/claude.md +0 -93
  515. package/docs/cli-commands/integration_guide.md +0 -371
  516. package/docs/cli-commands/quick_reference.md +0 -362
  517. package/docs/cli-commands/readme.md +0 -361
  518. package/docs/cli.md +0 -156
  519. package/docs/cloudkit_sync_guide.md +0 -495
  520. package/docs/codebase_review.md +0 -288
  521. package/docs/codex-oauth.md +0 -635
  522. package/docs/codex.md +0 -104
  523. package/docs/codexbar.png +0 -0
  524. package/docs/copilot.md +0 -44
  525. package/docs/cursor.md +0 -46
  526. package/docs/design/designcomparisonchart.md +0 -510
  527. package/docs/design/implementationguide.md +0 -792
  528. package/docs/design/menubaricondesignconcepts.md +0 -796
  529. package/docs/design/mockups/hybridiconconcept.svg +0 -62
  530. package/docs/design/mockups/infinityiconconcept.svg +0 -41
  531. package/docs/design/mockups/infinityiconstates.svg +0 -129
  532. package/docs/design/mockups/wavelogorefined.svg +0 -48
  533. package/docs/design/quick_summary.md +0 -426
  534. package/docs/design/readme.md +0 -478
  535. package/docs/design/sizespecifications.md +0 -575
  536. package/docs/design-system.md +0 -836
  537. package/docs/factory.md +0 -103
  538. package/docs/gemini.md +0 -73
  539. package/docs/icon.md +0 -37
  540. package/docs/icon.png +0 -0
  541. package/docs/index.html +0 -175
  542. package/docs/keychain_fix.md +0 -274
  543. package/docs/minimax.md +0 -71
  544. package/docs/packaging.md +0 -25
  545. package/docs/progress-bar-improvements.md +0 -240
  546. package/docs/progress-bar-quick-reference.md +0 -283
  547. package/docs/progress-bar-technical-details.md +0 -432
  548. package/docs/progress-bar-visual-test.swift +0 -375
  549. package/docs/provider.md +0 -202
  550. package/docs/providers.md +0 -86
  551. package/docs/refactor/macros.md +0 -35
  552. package/docs/refresh-loop.md +0 -22
  553. package/docs/releasing-homebrew.md +0 -35
  554. package/docs/releasing.md +0 -121
  555. package/docs/research/concrete_todo_2026-02-22.md +0 -47
  556. package/docs/research/core-feature-research.md +0 -248
  557. package/docs/research/feature_uiux_roadmap_2026-02-22.md +0 -202
  558. package/docs/research/parity_matrix.md +0 -49
  559. package/docs/research/provider_expansion_candidates_2026-02-22.md +0 -80
  560. package/docs/research/provider_model_token_project_matrix_2026-02-23.md +0 -46
  561. package/docs/research/release_gate_checklist.md +0 -57
  562. package/docs/site.css +0 -505
  563. package/docs/sparkle.md +0 -28
  564. package/docs/status.md +0 -28
  565. package/docs/sync/implementation.md +0 -393
  566. package/docs/sync/readme.md +0 -317
  567. package/docs/sync_files_summary.md +0 -391
  568. package/docs/sync_quick_reference.md +0 -225
  569. package/docs/todo.md +0 -11
  570. package/docs/ui.md +0 -29
  571. package/docs/web-integration.md +0 -9
  572. package/docs/widgets.md +0 -85
  573. package/docs/workflows/error-handling-improvements.md +0 -434
  574. package/docs/workflows/folder_structure.md +0 -299
  575. package/docs/workflows/loading_states.md +0 -446
  576. package/docs/workflows/loading_states_examples.md +0 -565
  577. package/docs/workflows/loading_states_flow.md +0 -430
  578. package/docs/workflows/performance_optimizations.md +0 -457
  579. package/docs/workflows/phase1-cli-testing-report.md +0 -313
  580. package/docs/workflows/quick_reference.md +0 -228
  581. package/docs/workflows/readme.md +0 -59
  582. package/docs/workflows/recent_improvements.md +0 -275
  583. package/docs/workflows/sync_enablement_summary.md +0 -400
  584. package/docs/zai.md +0 -43
  585. package/runic.png +0 -0
  586. package/version.env +0 -2
@@ -1,313 +0,0 @@
1
- # RunicCLI Phase 1 Testing - Final Report
2
-
3
- ## Executive Summary
4
-
5
- Testing of the RunicCLI executable has been completed. The build succeeds, and most Phase 1 enhancements are properly implemented. However, there are 2 critical issues preventing full functionality.
6
-
7
- **Build Status**: ✅ PASS (1.29s)
8
- **Overall Test Status**: 🟡 PARTIAL PASS (6/8 commands working)
9
-
10
- ---
11
-
12
- ## Detailed Test Results
13
-
14
- ### ✅ Test 1: Build Command
15
- ```bash
16
- swift build -c release --product RunicCLI
17
- ```
18
- **Result**: SUCCESS
19
- - Build completed in 1.29 seconds
20
- - Warnings about disabled files (expected, not blocking)
21
-
22
- ### ✅ Test 2: Usage Command (Text Format)
23
- ```bash
24
- .build/release/RunicCLI usage
25
- ```
26
- **Result**: SUCCESS
27
- - Displays usage for all providers
28
- - Color-coded progress bars
29
- - Shows session/weekly usage percentages
30
- - Provider errors are expected (missing credentials)
31
-
32
- ### ❌ Test 3: Usage Command (JSON Format)
33
- ```bash
34
- .build/release/RunicCLI usage --format=json
35
- ```
36
- **Result**: FAILURE
37
- **Error**: `Helix.HelixError error 3`
38
-
39
- **Root Cause**: The `runUsage` function in CLIEntry.swift (lines 102-170) doesn't properly implement JSON encoding. It tries to parse text output as JSON instead of encoding structured data.
40
-
41
- **Code Location**: `/Users/srinivaspendela/Sriinnu/AI/Runic/Sources/RunicCLI/CLIEntry.swift:158-169`
42
-
43
- **Fix Required**: Replace text concatenation with proper Encodable struct and JSONEncoder
44
-
45
- ### ⚠️ Test 4: Insights - Projects View with Budget
46
- ```bash
47
- .build/release/RunicCLI insights --view projects --budget --json
48
- ```
49
- **Result**: COMMAND WORKS (No data available)
50
- - Command parsing: ✅ PASS
51
- - Budget flag recognition: ✅ PASS
52
- - JSON flag recognition: ✅ PASS
53
- - Output: "No insights available." (expected when no log data exists)
54
-
55
- **Note**: This is correct behavior. The command works, but requires historical usage log data to display results.
56
-
57
- ### ⚠️ Test 5: Insights - Hourly Granularity
58
- ```bash
59
- .build/release/RunicCLI insights --view daily --granularity hourly --json
60
- ```
61
- **Result**: COMMAND WORKS (No data available)
62
- - Command parsing: ✅ PASS
63
- - Granularity flag: ✅ PASS
64
- - Hourly aggregation logic: ✅ IMPLEMENTED (lines 272-274 in CLIEntry.swift)
65
- - Output: "No insights available." (expected)
66
-
67
- **Code**:
68
- ```swift
69
- if let granularity = granularityArg, granularity == "hourly" {
70
- let summaries = UsageLedgerAggregator.hourlySummaries(entries: entries, timeZone: timeZone)
71
- Self.renderInsightsOutput(summaries, isJson: isJson, isPretty: isPretty)
72
- }
73
- ```
74
-
75
- ### ⚠️ Test 6: Insights - Comparative View
76
- ```bash
77
- .build/release/RunicCLI insights --view comparative --json
78
- ```
79
- **Result**: COMMAND WORKS (No data available)
80
- - Comparative view: ✅ IMPLEMENTED (lines 296-298 in CLIEntry.swift)
81
- - Model cost comparison: ✅ IMPLEMENTED (lines 406-437)
82
- - Cost-per-token ranking: ✅ IMPLEMENTED
83
- - Output: "No insights available." (expected)
84
-
85
- **Implementation**:
86
- ```swift
87
- case "comparative":
88
- let comparisons = Self.modelCostComparison(entries: entries)
89
- Self.renderInsightsOutput(comparisons, isJson: isJson, isPretty: isPretty)
90
- ```
91
-
92
- ### ⚠️ Test 7: Insights - Efficiency Metrics
93
- ```bash
94
- .build/release/RunicCLI insights --view efficiency --json
95
- ```
96
- **Result**: COMMAND WORKS (No data available)
97
- - Efficiency view: ✅ IMPLEMENTED (lines 299-301 in CLIEntry.swift)
98
- - Efficiency metrics calculation: ✅ IMPLEMENTED (lines 441-469)
99
- - Metrics include: tokens/request, cost/request, cache hit rate
100
- - Output: "No insights available." (expected)
101
-
102
- **Implementation**:
103
- ```swift
104
- case "efficiency":
105
- let efficiencies = Self.modelEfficiencyMetrics(entries: entries)
106
- Self.renderInsightsOutput(efficiencies, isJson: isJson, isPretty: isPretty)
107
- ```
108
-
109
- **Metrics Calculated**:
110
- - Tokens per request
111
- - Cost per request
112
- - Cache hit rate
113
- - Total cost
114
-
115
- ### ❌ Test 8: Alerts Command
116
- ```bash
117
- .build/release/RunicCLI alerts list --format=json
118
- ```
119
- **Result**: COMMAND NOT AVAILABLE
120
-
121
- **Root Cause**:
122
- 1. AlertsCommand.swift is disabled (renamed to .disabled extension)
123
- 2. Command is not registered in CLIEntry.swift's Program descriptor (line 81)
124
-
125
- **Files**:
126
- - Implementation exists: `/Users/srinivaspendela/Sriinnu/AI/Runic/Sources/RunicCLI/Commands/AlertsCommand.swift.disabled`
127
- - Full implementation complete (513 lines)
128
- - Supports: list, add, test, remove, enable, disable subcommands
129
-
130
- ---
131
-
132
- ## Feature Implementation Status
133
-
134
- ### ✅ Fully Implemented Features
135
-
136
- 1. **Insights Command Framework**
137
- - Daily view with hourly granularity support
138
- - Session view
139
- - Blocks view
140
- - Models view
141
- - Projects view
142
- - Comparative view (NEW in Phase 1)
143
- - Efficiency view (NEW in Phase 1)
144
-
145
- 2. **Budget Tracking** (NEW in Phase 1)
146
- - --budget flag support
147
- - Project budget enrichment
148
- - Budget status (ok, warning, critical)
149
- - Month-to-date tracking
150
-
151
- 3. **Comparative Analysis** (NEW in Phase 1)
152
- - Model cost-per-token comparison
153
- - Automatic ranking
154
- - Total cost and token tracking
155
- - Request count metrics
156
-
157
- 4. **Efficiency Metrics** (NEW in Phase 1)
158
- - Tokens per request
159
- - Cost per request
160
- - Cache hit rate calculation
161
- - Per-model efficiency tracking
162
-
163
- 5. **JSON Output**
164
- - Works for all insights views
165
- - Pretty-print support
166
- - ISO8601 date formatting
167
- - Proper encoding of all data types
168
-
169
- 6. **Git Integration**
170
- - --with-commits flag
171
- - Links usage entries to git commits
172
- - 5-minute window matching
173
- - Commit SHA and message display
174
-
175
- ### ❌ Broken Features
176
-
177
- 1. **Usage Command JSON Output**
178
- - Text output works perfectly
179
- - JSON output throws Helix error
180
- - Root cause: improper JSON encoding implementation
181
-
182
- 2. **Alerts Command**
183
- - Fully implemented but disabled
184
- - Not registered in CLI entry point
185
- - All subcommands coded and ready
186
-
187
- ### ⚠️ Requires Test Data
188
-
189
- All insights views work correctly but require historical log data:
190
- - Daily/hourly summaries
191
- - Session summaries
192
- - Block summaries
193
- - Model summaries
194
- - Project summaries
195
- - Comparative analysis
196
- - Efficiency metrics
197
-
198
- ---
199
-
200
- ## Code Quality Assessment
201
-
202
- ### ✅ Well-Implemented
203
-
204
- 1. **Modular Design**: Clean separation between command parsing and execution
205
- 2. **Error Handling**: Proper error messages for missing data
206
- 3. **Type Safety**: Strong typing with Encodable protocols
207
- 4. **Code Organization**: Clear structure with MARK comments
208
- 5. **Configurability**: Extensive flag and option support
209
-
210
- ### ⚠️ Areas for Improvement
211
-
212
- 1. **Usage JSON Output**: Needs proper JSONEncoder implementation
213
- 2. **Disabled Files**: Should be removed or properly excluded
214
- 3. **Test Coverage**: No automated tests found
215
- 4. **Documentation**: In-code documentation is good, but external docs missing
216
-
217
- ---
218
-
219
- ## Critical Issues
220
-
221
- ### Issue #1: Usage Command JSON Output
222
- **Severity**: HIGH
223
- **Impact**: Users cannot export usage data as JSON
224
- **File**: `Sources/RunicCLI/CLIEntry.swift:102-170`
225
-
226
- **Current Implementation**:
227
- ```swift
228
- // Lines 158-169: Tries to parse text as JSON (WRONG)
229
- if isPretty && isJson {
230
- if let data = output.data(using: .utf8),
231
- let json = try? JSONSerialization.jsonObject(with: data) as? [String: Any],
232
- // ... this fails because output is text, not JSON
233
- ```
234
-
235
- **Required Fix**:
236
- - Create Encodable struct for usage data
237
- - Use JSONEncoder to encode the struct
238
- - Remove text-to-JSON conversion attempt
239
-
240
- ### Issue #2: Alerts Command Disabled
241
- **Severity**: MEDIUM
242
- **Impact**: Alert management functionality unavailable
243
- **Files**:
244
- - `Sources/RunicCLI/Commands/AlertsCommand.swift.disabled`
245
- - `Sources/RunicCLI/CLIEntry.swift`
246
-
247
- **Required Fix**:
248
- 1. Rename `AlertsCommand.swift.disabled` to `AlertsCommand.swift`
249
- 2. Import AlertsCommand in CLIEntry.swift
250
- 3. Add alerts descriptor to Program (line 81)
251
- 4. Add case for "alerts" in switch statement (line 85)
252
-
253
- ---
254
-
255
- ## Recommendations
256
-
257
- ### Immediate (Before Production)
258
- 1. ✅ Fix usage command JSON output
259
- 2. ✅ Enable and register alerts command
260
- 3. ✅ Test all commands with real usage data
261
-
262
- ### Short-term
263
- 1. Add automated integration tests
264
- 2. Create user documentation
265
- 3. Add JSON schema validation
266
- 4. Handle empty data gracefully (return [] instead of error)
267
-
268
- ### Long-term
269
- 1. Add comprehensive error logging
270
- 2. Performance optimization for large datasets
271
- 3. Add data export formats (CSV, etc.)
272
- 4. Implement caching for expensive operations
273
-
274
- ---
275
-
276
- ## Test Environment
277
-
278
- - **Working Directory**: `/Users/srinivaspendela/Sriinnu/AI/Runic`
279
- - **Build Tool**: Swift Package Manager
280
- - **Build Configuration**: Release
281
- - **Platform**: macOS (Darwin 24.6.0)
282
- - **Build Time**: 1.29 seconds
283
-
284
- ---
285
-
286
- ## Conclusion
287
-
288
- **Phase 1 CLI Enhancements Implementation: 75% Complete**
289
-
290
- **Working (6/8)**:
291
- - ✅ Insights command with all views
292
- - ✅ Budget tracking integration
293
- - ✅ Hourly granularity support
294
- - ✅ Comparative analysis
295
- - ✅ Efficiency metrics
296
- - ✅ Git commit linking
297
-
298
- **Broken (2/8)**:
299
- - ❌ Usage command JSON output
300
- - ❌ Alerts command (disabled)
301
-
302
- **Key Achievements**:
303
- - All new Phase 1 features are properly implemented in the insights command
304
- - JSON encoding works correctly for all insights views
305
- - Command parsing and flag handling works perfectly
306
- - Code structure is clean and maintainable
307
-
308
- **Blocking Issues**:
309
- - Usage command cannot export JSON (Helix error)
310
- - Alerts functionality is completely unavailable
311
-
312
- **Recommendation**: Fix the two critical issues before considering Phase 1 complete. The core functionality is solid, but these bugs prevent full usability.
313
-
@@ -1,228 +0,0 @@
1
- # Runic Quick Reference
2
-
3
- **For developers who want to get productive fast.**
4
-
5
- ---
6
-
7
- ## 🚀 Quick Start
8
-
9
- ```bash
10
- # Clone and build
11
- git clone <repo-url>
12
- cd Runic
13
- RUNIC_SIGNING=adhoc ./Scripts/compile_and_run.sh
14
-
15
- # Run tests
16
- swift test
17
-
18
- # Package app
19
- ./Scripts/package_app.sh
20
- ```
21
-
22
- ---
23
-
24
- ## 📁 Where Is Everything?
25
-
26
- | What | Where |
27
- |------|-------|
28
- | **State management** | `Core/Stores/UsageStore.swift` |
29
- | **Menubar icon** | `Core/Rendering/IconRenderer.swift` |
30
- | **Menu UI** | `Views/Menu/MenuCardView.swift` |
31
- | **Settings UI** | `Views/Preferences/Preferences*Pane.swift` |
32
- | **Animations** | `Controllers/StatusItemController+Animation.swift` |
33
- | **Performance config** | `Utilities/PerformanceConstants.swift` |
34
- | **Provider code** | `Providers/{ProviderName}/` |
35
-
36
- ---
37
-
38
- ## 🔧 Common Tasks
39
-
40
- ### Adding a New Provider
41
-
42
- 1. Create folder: `Providers/ProviderName/`
43
- 2. Add files:
44
- - `ProviderNameProviderImplementation.swift`
45
- - `ProviderNameLoginFlow.swift`
46
- 3. Add icon: `Resources/ProviderIcon-providername.svg`
47
- 4. Register: `RunicCore/Providers/Providers.swift`
48
-
49
- ### Adjusting UI Spacing
50
-
51
- ```swift
52
- // Menu cards
53
- MenuCardMetrics.sectionSpacing = 8
54
- MenuCardMetrics.lineSpacing = 4
55
-
56
- // Preferences
57
- PreferencesLayoutMetrics.paneHorizontal = 35
58
- PreferencesLayoutMetrics.paneVertical = 25
59
- ```
60
-
61
- ### Tuning Performance
62
-
63
- Edit `Utilities/PerformanceConstants.swift`:
64
- ```swift
65
- static let menubarFPS = 60 // Animation frame rate
66
- static let iconCacheSize = 64 // Icon cache size
67
- static let staleDuration = Duration.seconds(300) // 5 min stale
68
- ```
69
-
70
- ### Finding Code
71
-
72
- ```bash
73
- # Search for function/class
74
- grep -r "functionName" Sources/
75
-
76
- # Find files by name
77
- find Sources/ -name "*Store*"
78
-
79
- # Search with line numbers
80
- grep -rn "MARK:" Sources/Runic/
81
- ```
82
-
83
- ---
84
-
85
- ## 🎨 UI Layout
86
-
87
- ### Menubar Icon
88
- - **Size:** 18×18pt (36×36px @2x)
89
- - **Renderer:** `IconRenderer.swift`
90
- - **Shows:** Usage bars, stale indicator, provider status
91
-
92
- ### Menu Cards
93
- - **Width:** Auto (SwiftUI)
94
- - **Padding:** 12pt horizontal
95
- - **Spacing:** 8pt between sections, 4pt between lines
96
-
97
- ### Preferences Window
98
- - **Size:** 500×400pt
99
- - **Tabs:** About, General, Providers, Advanced, Help, Debug
100
-
101
- ---
102
-
103
- ## ⚡ Performance Guidelines
104
-
105
- ### Do's ✅
106
- - Use O(1) lookups (Dictionary, Set)
107
- - Cache expensive operations
108
- - Stop animations when not needed
109
- - Use cookies before API calls
110
-
111
- ### Don'ts ❌
112
- - Never block main thread
113
- - Avoid O(n) operations on large datasets
114
- - Don't leak tokens (always cache first)
115
- - No magic numbers (use constants)
116
-
117
- ---
118
-
119
- ## 🐛 Debugging
120
-
121
- ### Check Logs
122
- ```bash
123
- # App logs
124
- log stream --predicate 'process == "Runic"' --level debug
125
-
126
- # Build errors
127
- swift build 2>&1 | grep error
128
- ```
129
-
130
- ### Common Issues
131
-
132
- | Problem | Solution |
133
- |---------|----------|
134
- | **Stale binary** | `pkill -x Runic && ./Scripts/compile_and_run.sh` |
135
- | **Build fails** | `rm -rf .build && swift build` |
136
- | **Icon not updating** | Clear cache in Debug preferences |
137
- | **Menu not showing** | Check `StatusItemController+Menu.swift` |
138
-
139
- ---
140
-
141
- ## 📊 Code Statistics
142
-
143
- | Metric | Value |
144
- |--------|-------|
145
- | **Total files** | ~119 |
146
- | **Total lines** | ~30,000 |
147
- | **Avg file size** | ~250 lines |
148
- | **Largest file** | UsageStore.swift (2089 lines) |
149
- | **Providers** | 11 (Claude, Codex, Cursor, etc.) |
150
-
151
- ---
152
-
153
- ## 🔗 Key Files Quick Links
154
-
155
- ### Core (Business Logic)
156
- - [UsageStore.swift](Sources/Runic/Core/Stores/UsageStore.swift) - Main state (2089 lines)
157
- - [IconRenderer.swift](Sources/Runic/Core/Rendering/IconRenderer.swift) - Icon generation (882 lines)
158
- - [PerformanceConstants.swift](Sources/Runic/Utilities/PerformanceConstants.swift) - Config (50 lines)
159
-
160
- ### UI (SwiftUI)
161
- - [MenuCardView.swift](Sources/Runic/Views/Menu/MenuCardView.swift) - Menu UI (1093 lines)
162
- - [PreferencesView.swift](Sources/Runic/Views/Preferences/PreferencesView.swift) - Settings (200 lines)
163
-
164
- ### Controllers (AppKit)
165
- - [StatusItemController.swift](Sources/Runic/Controllers/StatusItemController.swift) - Menubar (318 lines)
166
- - [StatusItemController+Menu.swift](Sources/Runic/Controllers/StatusItemController+Menu.swift) - Menu builder (1878 lines)
167
- - [StatusItemController+Animation.swift](Sources/Runic/Controllers/StatusItemController+Animation.swift) - Animations (469 lines)
168
-
169
- ---
170
-
171
- ## 🎯 Terminology
172
-
173
- | Term | Meaning |
174
- |------|---------|
175
- | **Ping** | Fetch latest usage data from provider |
176
- | **Snapshot** | Point-in-time usage data |
177
- | **Stale** | Data older than 5 minutes |
178
- | **Provider** | AI service (Claude, Codex, etc.) |
179
- | **Status item** | macOS menubar icon |
180
- | **Template image** | Image that adapts to menubar theme |
181
-
182
- ---
183
-
184
- ## 🔑 Keyboard Shortcuts
185
-
186
- | Shortcut | Action |
187
- |----------|--------|
188
- | `⌘⇧R` | Open Runic menu |
189
- | `⌘,` | Preferences |
190
- | `⌘Q` | Quit |
191
-
192
- ---
193
-
194
- ## 📚 Documentation Files
195
-
196
- | File | Purpose |
197
- |------|---------|
198
- | **README.md** | Project overview |
199
- | **AGENTS.md** | AI agent guidelines |
200
- | **FOLDER_STRUCTURE.md** | Code organization guide |
201
- | **RECENT_IMPROVEMENTS.md** | Latest changes |
202
- | **QUICK_REFERENCE.md** | This file |
203
- | **PLAN.md** | Development roadmap |
204
- | **CHANGELOG.md** | Version history |
205
-
206
- ---
207
-
208
- ## 💡 Pro Tips
209
-
210
- 1. **Use folder structure** - Files are organized logically (see FOLDER_STRUCTURE.md)
211
- 2. **Read file headers** - Key files have comprehensive documentation
212
- 3. **Check PerformanceConstants** - All tuning knobs in one place
213
- 4. **Follow AGENTS.md** - Guidelines for consistent development
214
- 5. **Always rebuild** - Use `compile_and_run.sh` after changes
215
-
216
- ---
217
-
218
- ## 🆘 Getting Help
219
-
220
- 1. **Read docs** - Start with README.md, then FOLDER_STRUCTURE.md
221
- 2. **Check AGENTS.md** - Development guidelines and patterns
222
- 3. **Search code** - Use grep/find to locate examples
223
- 4. **Check git log** - See how features were implemented
224
- 5. **Ask maintainers** - Open an issue or discussion
225
-
226
- ---
227
-
228
- **Updated:** 2026-01-16 | **Version:** v0.16.1 | **Build:** 49
@@ -1,59 +0,0 @@
1
- # Runic Documentation & Workflows
2
-
3
- This folder contains comprehensive documentation and workflow guides for the Runic project.
4
-
5
- ## 📚 Documentation Files
6
-
7
- ### Quick References
8
- - **[QUICK_REFERENCE.md](QUICK_REFERENCE.md)** - Fast lookup guide for developers
9
- - Common tasks (adding providers, tuning performance)
10
- - Where to find everything
11
- - Debugging tips and pro tips
12
-
13
- ### Architecture & Structure
14
- - **[FOLDER_STRUCTURE.md](FOLDER_STRUCTURE.md)** - Complete code organization guide
15
- - Detailed folder structure with descriptions
16
- - Design principles and naming conventions
17
- - Code comment guidelines
18
- - File reference tables
19
-
20
- ### Workflows & Best Practices
21
- - **[PERFORMANCE_OPTIMIZATIONS.md](PERFORMANCE_OPTIMIZATIONS.md)** - Performance tuning guide
22
- - Zero token leakage policy
23
- - Animation performance (60 FPS)
24
- - Caching strategies
25
- - Single ping approach
26
-
27
- ### Change History
28
- - **[RECENT_IMPROVEMENTS.md](RECENT_IMPROVEMENTS.md)** - Latest updates and changes
29
- - Recent feature additions
30
- - UI/UX refinements
31
- - Code organization improvements
32
- - Build history
33
-
34
- ---
35
-
36
- ## 🎯 Getting Started
37
-
38
- **New to Runic?** Start here:
39
- 1. Read [QUICK_REFERENCE.md](QUICK_REFERENCE.md) for common tasks
40
- 2. Check [FOLDER_STRUCTURE.md](FOLDER_STRUCTURE.md) to understand the codebase
41
- 3. Review [PERFORMANCE_OPTIMIZATIONS.md](PERFORMANCE_OPTIMIZATIONS.md) for best practices
42
-
43
- **Working on a feature?**
44
- - Use [FOLDER_STRUCTURE.md](FOLDER_STRUCTURE.md) to find relevant files
45
- - Follow guidelines in [PERFORMANCE_OPTIMIZATIONS.md](PERFORMANCE_OPTIMIZATIONS.md)
46
- - Check [RECENT_IMPROVEMENTS.md](RECENT_IMPROVEMENTS.md) for latest patterns
47
-
48
- ---
49
-
50
- ## 📖 Additional Documentation
51
-
52
- For more documentation, see the main `docs/` folder:
53
- - **API documentation** - Provider-specific API docs
54
- - **Architecture guides** - System design documents
55
- - **Release guides** - Build and release processes
56
-
57
- ---
58
-
59
- **Last Updated:** 2026-01-17