<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Roman Sharafutdinov</title>
    <description>The latest articles on DEV Community by Roman Sharafutdinov (@shromarketing).</description>
    <link>https://dev.to/shromarketing</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4078304%2F9868bd9d-02e0-452f-848f-8d13dcd7f542.jpg</url>
      <title>DEV Community: Roman Sharafutdinov</title>
      <link>https://dev.to/shromarketing</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/shromarketing"/>
    <language>en</language>
    <item>
      <title>I Built Codex Pulse: A Native macOS Dashboard for Codex and Claude Quotas</title>
      <dc:creator>Roman Sharafutdinov</dc:creator>
      <pubDate>Sat, 15 Aug 2026 00:28:19 +0000</pubDate>
      <link>https://dev.to/shromarketing/i-built-codex-pulse-a-native-macos-dashboard-for-codex-and-claude-quotas-34cd</link>
      <guid>https://dev.to/shromarketing/i-built-codex-pulse-a-native-macos-dashboard-for-codex-and-claude-quotas-34cd</guid>
      <description>&lt;p&gt;If you use Codex and Claude side by side, you have probably done the same tiny ritual many times: open one Usage screen, open another, remember which percentage belongs to which window, and guess whether the remaining quota will last until the reset.&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;Codex Pulse&lt;/strong&gt; to remove that ritual.&lt;/p&gt;

&lt;p&gt;Codex Pulse is an open-source native macOS app that puts Codex and optional Claude Web quota windows in the menu bar, a desktop widget, and one dashboard. It is a public preview for macOS 13+ on Apple Silicon and Intel.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem is not a single percentage
&lt;/h2&gt;

&lt;p&gt;“60% remaining” sounds useful, but it is incomplete. To make a sensible decision before starting a long task, I need three different signals:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;how much quota remains;&lt;/li&gt;
&lt;li&gt;when that particular window resets;&lt;/li&gt;
&lt;li&gt;whether my current pace is likely to exhaust it before the reset.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The hard part is that Codex and Claude have different windows and different interfaces. Mixing their data into one “budget” creates another problem: a warning can look as if it belongs to the wrong provider.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Pulse shows
&lt;/h2&gt;

&lt;p&gt;For Codex, Pulse keeps the weekly Codex window and the separate Codex Spark window visible, including reset time and a pace forecast.&lt;/p&gt;

&lt;p&gt;When the source provides usage aggregates, the full dashboard also shows local analytics such as tokens, cache, output, models, projects, days, and an estimated cost.&lt;/p&gt;

&lt;p&gt;Claude Web is an opt-in connection through Chrome. Pulse can show the current session, the weekly all-model window, and separate model windows such as Fable when Claude’s Usage page returns them.&lt;/p&gt;

&lt;p&gt;The compact widget defaults to Codex, but you can switch between Codex and Claude without opening settings. Each provider keeps its own reset time and pace signal.&lt;/p&gt;

&lt;h2&gt;
  
  
  Data boundaries are a feature
&lt;/h2&gt;

&lt;p&gt;This is deliberately a read-only, local-first tool.&lt;/p&gt;

&lt;p&gt;Pulse does &lt;strong&gt;not&lt;/strong&gt; read chat history or prompt text. It does not store passwords, cookies, API keys, access tokens, or account email addresses. Claude authentication remains in Chrome; the local connector sends only cleaned quota-window data such as labels, percentages, and reset times.&lt;/p&gt;

&lt;p&gt;There is one important limitation: Claude Web exposes quota percentages and reset times, not a complete token ledger, project breakdown, or exact spend. Pulse does not invent those missing numbers.&lt;/p&gt;

&lt;h2&gt;
  
  
  Current limitations
&lt;/h2&gt;

&lt;p&gt;Codex Pulse is a public preview. It is not yet signed with an Apple Developer ID or notarized, so macOS may show its standard one-time warning for an unsigned app.&lt;/p&gt;

&lt;p&gt;Claude Desktop without Claude Web is not a direct integration yet. The current Claude view needs an authorized &lt;code&gt;claude.ai&lt;/code&gt; tab in Chrome.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;The source code, releases, universal DMG/ZIP downloads, and SHA-256 checksums are on GitHub:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/shromarketing/codex-pulse" rel="noopener noreferrer"&gt;https://github.com/shromarketing/codex-pulse&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I would especially value feedback on two things:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Which quota windows do you actually need every day?&lt;/li&gt;
&lt;li&gt;At what point does it become unclear whether a limit, reset time, or warning belongs to Codex or Claude?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you try it, a bug report with your macOS version, Pulse version, and reproducible steps is much more useful than a screenshot containing private data.&lt;/p&gt;

</description>
      <category>opensource</category>
    </item>
  </channel>
</rss>
