Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<p align="center">
<img src="images/token-meter-header.png" alt="Token Meter — local-first observability for AI coding agents" width="900">
<img src="images/token-meter-header.png" alt="Splunk by Cisco · Token Meter — local-first observability for AI coding agents" width="900">
</p>

<p align="center">
Expand Down Expand Up @@ -196,3 +196,5 @@ Full details: [User guide](specs/USER_GUIDE.md#data-and-evidence) ·
## License

MIT. See [LICENSE](LICENSE).

Token Meter is an open-source project from Splunk by Cisco.
Binary file removed assets/brand/logo-splunk-acc-rgb-w.png
Binary file not shown.
Binary file added assets/brand/logo-splunk-by-cisco-rgb-w.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed docs/images/logo-splunk-acc-rgb-w.png
Binary file not shown.
Binary file added docs/images/logo-splunk-by-cisco-rgb-w.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 3 additions & 3 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
<a class="brand" href="#top" aria-label="Token Meter home">
<span class="brand-mark" aria-hidden="true">&gt;</span>
<span class="brand-name">Token Meter</span>
<span class="brand-partner"><span class="brand-divider" aria-hidden="true"></span><img class="splunk-logo" src="images/logo-splunk-acc-rgb-w.png" alt="Splunk" width="50" height="20"></span>
<span class="brand-partner"><span class="brand-divider" aria-hidden="true"></span><img class="splunk-logo" src="images/logo-splunk-by-cisco-rgb-w.png" alt="Splunk by Cisco" width="55" height="20"></span>
</a>
<nav class="site-nav" aria-label="Primary navigation">
<a href="#product">Product</a>
Expand Down Expand Up @@ -314,7 +314,7 @@ <h3>Cache hit ratio</h3>

<div class="efficiency-signature" data-reveal>
<span>Open source from</span>
<img class="splunk-logo" src="images/logo-splunk-acc-rgb-w.png" alt="Splunk" width="76" height="30">
<img class="splunk-logo" src="images/logo-splunk-by-cisco-rgb-w.png" alt="Splunk by Cisco" width="82" height="30">
<span>Signals, not verdicts.</span>
</div>
</div>
Expand Down Expand Up @@ -361,7 +361,7 @@ <h2 id="closing-title">Your agents are already producing the evidence.</h2>
<a href="https://github.com/splunk/token-meter/blob/main/specs/SECURITY.md" target="_blank" rel="noopener noreferrer">Security</a>
<a href="https://github.com/splunk/token-meter/blob/main/LICENSE" target="_blank" rel="noopener noreferrer">MIT</a>
</div>
<p class="footer-note"><span>Built in the open by</span> <img class="splunk-logo" src="images/logo-splunk-acc-rgb-w.png" alt="Splunk" width="23" height="9"></p>
<p class="footer-note"><span>Built in the open by</span> <img class="splunk-logo" src="images/logo-splunk-by-cisco-rgb-w.png" alt="Splunk by Cisco" width="25" height="9"></p>
</div>
</footer>

Expand Down
Binary file modified docs/talk/img/splunk-logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions docs/talk/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -1026,7 +1026,7 @@ <h1 class="a" style="--d:.1s;font-size:5.6cqw;line-height:1.02">Spend tokens<br>
<div class="slot"><i></i><span>TOKEN METER</span><b></b></div>
<div class="paper">
<div class="ph" style="justify-content:center"><span>NEXT STEPS</span></div>
<a class="li" href="https://www.splunk.com/en_us/blog/artificial-intelligence/token-meter-a-live-cost-meter-for-your-coding-agents.html" target="_blank" rel="noopener noreferrer"><span class="ic"><img src="img/splunk-logo.png" alt="Splunk"></span><span class="t">Read the blog</span><span class="v">splunk.com/blog</span></a>
<a class="li" href="https://www.splunk.com/en_us/blog/artificial-intelligence/token-meter-a-live-cost-meter-for-your-coding-agents.html" target="_blank" rel="noopener noreferrer"><span class="ic"><img src="img/splunk-logo.png" alt="Splunk by Cisco"></span><span class="t">Read the blog</span><span class="v">splunk.com/blog</span></a>
<a class="li" href="https://github.com/splunk/token-meter" target="_blank" rel="noopener noreferrer"><span class="ic"><svg viewBox="0 0 16 16" aria-hidden="true"><path fill="#0a0b09" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"/></svg></span><span class="t">Install &amp; star</span><span class="v">splunk/token-meter</span></a>
<a class="li" href="https://github.com/splunk/token-meter/blob/main/specs/CONTRIBUTING.md" target="_blank" rel="noopener noreferrer"><span class="ic"><svg viewBox="0 0 16 16" aria-hidden="true"><path fill="#0a0b09" d="M1.5 3.25a2.25 2.25 0 1 1 3 2.122v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.25 2.25 0 0 1 1.5 3.25Zm5.677-.177L9.573.677A.25.25 0 0 1 10 .854V2.5h1A2.5 2.5 0 0 1 13.5 5v5.628a2.251 2.251 0 1 1-1.5 0V5a1 1 0 0 0-1-1h-1v1.646a.25.25 0 0 1-.427.177L7.177 3.427a.25.25 0 0 1 0-.354ZM3.75 2.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm0 9.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm8.25.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Z"/></svg></span><span class="t">Send a PR</span><span class="v">new models &amp; agents</span></a>
<a class="li"><span class="ic"><svg viewBox="0 0 24 24" aria-hidden="true"><rect x="9" y="1" width="3.6" height="10" rx="1.8" fill="#36c5f0"/><rect x="1" y="7.4" width="10" height="3.6" rx="1.8" fill="#36c5f0"/><rect x="13" y="9" width="10" height="3.6" rx="1.8" fill="#2eb67d"/><rect x="13" y="1" width="3.6" height="10" rx="1.8" fill="#2eb67d"/><rect x="11.4" y="13" width="3.6" height="10" rx="1.8" fill="#ecb22e"/><rect x="13" y="13" width="10" height="3.6" rx="1.8" fill="#ecb22e"/><rect x="1" y="11.4" width="10" height="3.6" rx="1.8" fill="#e01e5a"/><rect x="9" y="13" width="3.6" height="10" rx="1.8" fill="#e01e5a"/></svg></span><span class="t">Join Splunk Slack</span><span class="v">#token-meter</span></a>
Expand Down Expand Up @@ -1179,7 +1179,7 @@ <h1 class="a" style="--d:.1s;font-size:5.6cqw;line-height:1.02">Spend tokens<br>
// slide number and brand
{const all=[...document.querySelectorAll('.slide')];all.forEach((sl,i)=>{
const n=document.createElement('div');n.className='snum';n.innerHTML=`${String(i+1).padStart(2,'0')}<small>/ ${all.length}</small>`;sl.appendChild(n);
const b=document.createElement('div');b.className='brand';b.innerHTML='<img src="img/splunk-logo.png" alt="Splunk"><span>Token Meter</span>';sl.appendChild(b)})}
const b=document.createElement('div');b.className='brand';b.innerHTML='<img src="img/splunk-logo.png" alt="Splunk by Cisco"><span>Token Meter</span>';sl.appendChild(b)})}

// page location chips
document.querySelectorAll('.slide[data-loc]').forEach(sl=>{sl.classList.add('has-loc');const d=document.createElement('div');d.className='loc a';d.style.setProperty('--d','.15s');d.innerHTML=sl.dataset.loc;sl.insertBefore(d,sl.firstChild)});
Expand Down
4 changes: 2 additions & 2 deletions docs/token-optimization.html
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
<a class="brand" href="./" aria-label="Token Meter home">
<span class="brand-mark" aria-hidden="true">&gt;</span>
<span class="brand-name">Token Meter</span>
<span class="brand-partner"><span class="brand-divider" aria-hidden="true"></span><img class="splunk-logo" src="images/logo-splunk-acc-rgb-w.png" alt="Splunk" width="50" height="20"></span>
<span class="brand-partner"><span class="brand-divider" aria-hidden="true"></span><img class="splunk-logo" src="images/logo-splunk-by-cisco-rgb-w.png" alt="Splunk by Cisco" width="55" height="20"></span>
</a>
<nav class="site-nav" aria-label="Primary navigation">
<a href="index.html#product">Product</a>
Expand Down Expand Up @@ -229,7 +229,7 @@ <h2 id="start-title">Measure your own</h2>
<a href="https://github.com/splunk/token-meter/blob/main/specs/SECURITY.md" target="_blank" rel="noopener noreferrer">Security</a>
<a href="https://github.com/splunk/token-meter/blob/main/LICENSE" target="_blank" rel="noopener noreferrer">MIT</a>
</div>
<p class="footer-note"><span>Built in the open by</span> <img class="splunk-logo" src="images/logo-splunk-acc-rgb-w.png" alt="Splunk" width="23" height="9"></p>
<p class="footer-note"><span>Built in the open by</span> <img class="splunk-logo" src="images/logo-splunk-by-cisco-rgb-w.png" alt="Splunk by Cisco" width="25" height="9"></p>
</div>
</footer>

Expand Down
Binary file modified images/token-meter-header.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion page.html
Original file line number Diff line number Diff line change
Expand Up @@ -2715,7 +2715,7 @@
-->
<div class=wrap>
<div class=top aria-label="Token Meter navigation">
<div class=brand><div class=logo role=img aria-label=Splunk><img src="/assets/brand/logo-splunk-acc-rgb-w.png" alt=""></div><span class=brandCopy><span class=brandName>Token Meter</span></span></div>
<div class=brand><div class=logo role=img aria-label="Splunk by Cisco"><img src="/assets/brand/logo-splunk-by-cisco-rgb-w.png" alt=""></div><span class=brandCopy><span class=brandName>Token Meter</span></span></div>
<nav class=tabs aria-label="Primary navigation">
<div class=navPrimary>
<button class="tab on" id=tab-session data-label=Sessions aria-label=Sessions title=Sessions><svg class=tabIcon viewBox="0 0 24 24" aria-hidden=true><path d="M4 7h16M4 12h16M4 17h16"/><path d="M7 5v4M14 10v4M18 15v4"/></svg><span class=tabLabel>Sessions</span></button>
Expand Down
6 changes: 3 additions & 3 deletions performance.html
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
<body class="spectrumApp performanceApp">
<div class=performanceShell>
<aside class=performanceRail id=performance-rail aria-label="Token Meter navigation">
<a class=railBrand href="/#sessions" aria-label="Token Meter dashboard"><img src="/assets/brand/logo-splunk-acc-rgb-w.png" alt=""><span class=railBrandName>Token Meter</span></a>
<a class=railBrand href="/#sessions" aria-label="Token Meter dashboard"><img src="/assets/brand/logo-splunk-by-cisco-rgb-w.png" alt=""><span class=railBrandName>Token Meter</span></a>
<nav class=railNav id=performance-navigation aria-label="Primary navigation">
<div class=railPrimary>
<a class=railLink href="/#sessions" aria-label=Sessions title=Sessions><svg class=railIcon viewBox="0 0 24 24" aria-hidden=true><path d="M4 7h16M4 12h16M4 17h16"/><path d="M7 5v4M14 10v4M18 15v4"/></svg><span class=railLabel>Sessions</span></a>
Expand Down Expand Up @@ -111,7 +111,7 @@
</section>
<section class=stage id=performance-preview aria-label="Builder Field Sheet preview">
<div class=stageMeta aria-hidden=true><span>Live preview</span><span>1080 × 1350 · PNG</span></div>
<div class=posterFrame><img id=performance-card-logo src="/assets/brand/logo-splunk-acc-rgb-w.png" alt="" hidden><canvas id=poster width=1080 height=1350 role=img aria-label="Builder recap preview loading"></canvas></div>
<div class=posterFrame><img id=performance-card-logo src="/assets/brand/logo-splunk-by-cisco-rgb-w.png" alt="" hidden><canvas id=poster width=1080 height=1350 role=img aria-label="Builder recap preview loading"></canvas></div>
</section>
</div>
</main>
Expand Down Expand Up @@ -343,7 +343,7 @@
const lineStat=safeArray(payload&&payload.spotlights).find(stat=>stat&&stat.id==='lines_pushed');
const lead=lineStat||{id:'lines_pushed',label:'Lines pushed',family:'delivery',available:false,current:null,previous:null,delta_pct:null,unit:'lines'};
const commitStat=safeArray(payload&&payload.spotlights).find(stat=>stat&&stat.id==='commits_pushed')||{id:'commits_pushed',label:'Commits pushed',family:'delivery',available:false,current:null,previous:null,delta_pct:null,unit:'commits'};
const logo=options.logo,hasLogo=Boolean(logo&&logo.complete&&Number(logo.naturalWidth)>0);if(hasLogo)ctx.drawImage(logo,72,44,148,59);
const logo=options.logo,hasLogo=Boolean(logo&&logo.complete&&Number(logo.naturalWidth)>0);if(hasLogo)ctx.drawImage(logo,72,46,148,54);
const brandX=hasLogo?258:72;
if(hasLogo){ctx.fillStyle=gradientFill(ctx,0,46,0,102,[[0,c(P.hi,.08)],[.5,c(P.hi,.5)],[1,c(P.hi,.08)]]);ctx.fillRect(236,46,2,56);}
ctx.fillStyle=gradientFill(ctx,brandX,60,brandX+330,96,[[0,light],[1,sky]]);setTracking(ctx,'1.5px');ctx.font='900 42px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif';ctx.fillText('TOKEN METER',brandX,88);
Expand Down
2 changes: 1 addition & 1 deletion runtime-manifest.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ required token_meter_mcp.py
required menubar/TokenMeterMenuBar.swift
required menubar/Info.plist
required menubar/token_meter_tray.py
required assets/brand/logo-splunk-acc-rgb-w.png
required assets/brand/logo-splunk-by-cisco-rgb-w.png
required scripts/install
required scripts/install-linux
required scripts/install-launch-agent
Expand Down
10 changes: 5 additions & 5 deletions tests/test_marketing_site.py
Original file line number Diff line number Diff line change
Expand Up @@ -210,18 +210,18 @@ def test_efficiency_has_a_dedicated_evidence_qualified_section(self):
self.assertNotIn("Efficiency score", efficiency)

def test_splunk_wordmarks_use_the_local_brand_image(self):
logo_source = "images/logo-splunk-acc-rgb-w.png"
logo_source = "images/logo-splunk-by-cisco-rgb-w.png"
logo_images = [
image for image in self.parser.images
if image.get("src") == logo_source
]
self.assertEqual(len(logo_images), 3)
for image in logo_images:
self.assertEqual(image.get("class"), "splunk-logo")
self.assertEqual(image.get("alt"), "Splunk")
self.assertEqual(image.get("alt"), "Splunk by Cisco")
self.assertEqual(
[(image.get("width"), image.get("height")) for image in logo_images],
[("50", "20"), ("76", "30"), ("23", "9")],
[("55", "20"), ("82", "30"), ("25", "9")],
)
self.assertTrue((SITE / logo_source).is_file())
self.assertIn(".splunk-logo", self.css)
Expand Down Expand Up @@ -415,7 +415,7 @@ def test_article_uses_only_local_assets(self):
self.assertEqual(
sorted(references),
sorted({"styles.css", "tab-controller.js", "script.js",
"images/logo-splunk-acc-rgb-w.png"}),
"images/logo-splunk-by-cisco-rgb-w.png"}),
)
for reference in references:
self.assertTrue((SITE / reference).is_file(), reference)
Expand Down Expand Up @@ -469,7 +469,7 @@ def test_deck_uses_only_local_assets_and_links_back_to_site(self):
class GitHubPagesBranchSourceContractTests(unittest.TestCase):
def test_exact_branch_source_contains_every_local_reference(self):
approved_images = (
"dashboard.png", "logo-splunk-acc-rgb-w.png", "spend.png",
"dashboard.png", "logo-splunk-by-cisco-rgb-w.png", "spend.png",
"tool-analytics.png",
)
deployed = _SiteParser()
Expand Down
Loading
Loading