Skip to content

Instantly share code, notes, and snippets.

@nicknisi
Last active May 3, 2026 00:03
Show Gist options
  • Select an option

  • Save nicknisi/8ae2614363943b4f83ca1e79572d5794 to your computer and use it in GitHub Desktop.

Select an option

Save nicknisi/8ae2614363943b4f83ca1e79572d5794 to your computer and use it in GitHub Desktop.
tokenmaxing — public data feed for nicknisi.com/tokenmaxing
{
"schemaVersion": 1,
"generatedAt": "2026-05-03T00:03:36.152Z",
"period": {
"from": "2025-09-25",
"to": "2026-05-02"
},
"summary": {
"totalCostUSD": 28306.38,
"totalTokens": 982528616,
"sessions": 985,
"messages": 119627,
"activeDays": 114,
"currentStreakDays": 0,
"longestStreakDays": 34,
"peakHourLocal": 10,
"favoriteModel": {
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"label": "claude-opus-4-6"
}
},
"byTool": [
{
"id": "claude-code",
"label": "Claude Code",
"tokens": 681881147,
"costUSD": 28211.75,
"sessions": 812,
"messages": 114969
},
{
"id": "codex",
"label": "Codex",
"tokens": 300647469,
"costUSD": 94.63,
"sessions": 173,
"messages": 4658
}
],
"byProvider": [
{
"id": "anthropic",
"label": "Anthropic",
"tokens": 681881147,
"costUSD": 28211.75
},
{
"id": "openai",
"label": "OpenAI",
"tokens": 300647469,
"costUSD": 94.63
}
],
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"label": "claude-opus-4-6",
"tokens": 403449193,
"costUSD": 20668.06,
"sessions": 499,
"messages": 71427
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"label": "claude-opus-4-7",
"tokens": 134306917,
"costUSD": 7499.58,
"sessions": 129,
"messages": 19207
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5-codex",
"label": "gpt-5-codex",
"tokens": 18457410,
"costUSD": 94.63,
"sessions": 1,
"messages": 417
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"label": "claude-sonnet-4-6",
"tokens": 6981940,
"costUSD": 44.11,
"sessions": 48,
"messages": 1616
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"label": "gpt-5",
"tokens": 36893657,
"costUSD": 0,
"sessions": 25,
"messages": 931
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"label": "claude-opus-4-5-20251101",
"tokens": 18934785,
"costUSD": 0,
"sessions": 93,
"messages": 1709
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"label": "claude-haiku-4-5-20251001",
"tokens": 108650168,
"costUSD": 0,
"sessions": 261,
"messages": 19703
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"label": "claude-sonnet-4-5-20250929",
"tokens": 9558144,
"costUSD": 0,
"sessions": 30,
"messages": 1095
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"label": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 88,
"messages": 212
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"label": "gpt-5.3-codex",
"tokens": 42612326,
"costUSD": 0,
"sessions": 19,
"messages": 610
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"label": "gpt-5.4",
"tokens": 93688164,
"costUSD": 0,
"sessions": 96,
"messages": 1599
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.5",
"label": "gpt-5.5",
"tokens": 108995912,
"costUSD": 0,
"sessions": 32,
"messages": 1101
}
],
"byProject": [
{
"label": "cli",
"tokens": 290678877,
"costUSD": 9607.88,
"sessions": 270
},
{
"label": "case",
"tokens": 74390928,
"costUSD": 3140.12,
"sessions": 57
},
{
"label": "skills",
"tokens": 136890904,
"costUSD": 3005.2,
"sessions": 86
},
{
"label": "workos",
"tokens": 89734281,
"costUSD": 2201.62,
"sessions": 62
},
{
"label": "authkit-nextjs",
"tokens": 59494095,
"costUSD": 1830.32,
"sessions": 80
},
{
"label": "authkit-session",
"tokens": 58980797,
"costUSD": 1385,
"sessions": 70
},
{
"label": "authkit-tanstack-start",
"tokens": 76673920,
"costUSD": 1287.41,
"sessions": 56
},
{
"label": "aie-europe",
"tokens": 20329096,
"costUSD": 1075.65,
"sessions": 26
},
{
"label": "dotfiles",
"tokens": 31230360,
"costUSD": 1064.35,
"sessions": 73
},
{
"label": "claude-plugins",
"tokens": 28986678,
"costUSD": 878.57,
"sessions": 50
},
{
"label": "authkit-sveltekit",
"tokens": 18227370,
"costUSD": 569.1,
"sessions": 24
},
{
"label": "nicknisi.com",
"tokens": 13205835,
"costUSD": 515.73,
"sessions": 9
},
{
"label": "emulate",
"tokens": 16576519,
"costUSD": 497.01,
"sessions": 12
},
{
"label": "talks",
"tokens": 7969847,
"costUSD": 335.31,
"sessions": 10
},
{
"label": "workos-node",
"tokens": 18827423,
"costUSD": 291.25,
"sessions": 45
},
{
"label": "authkit-react-router",
"tokens": 10694519,
"costUSD": 231.44,
"sessions": 13
},
{
"label": "workos-bulk-user-import-tool-multi-org",
"tokens": 1668657,
"costUSD": 92.11,
"sessions": 2
},
{
"label": "workos-custom-ui-authkit-example",
"tokens": 430365,
"costUSD": 69.29,
"sessions": 1
},
{
"label": "vibekit-cli-proto",
"tokens": 1677146,
"costUSD": 52.69,
"sessions": 3
},
{
"label": "authkit-react",
"tokens": 1810167,
"costUSD": 33.76,
"sessions": 3
},
{
"label": "workos-spec",
"tokens": 357353,
"costUSD": 26,
"sessions": 1
},
{
"label": "authkit-js",
"tokens": 2213179,
"costUSD": 20.94,
"sessions": 6
},
{
"label": "expo-authkit-example",
"tokens": 1875647,
"costUSD": 17.82,
"sessions": 9
},
{
"label": "mpp-demo",
"tokens": 385414,
"costUSD": 12.47,
"sessions": 3
},
{
"label": "claude-plugins-internal",
"tokens": 1002743,
"costUSD": 9.49,
"sessions": 1
},
{
"label": "react-router-authkit-example",
"tokens": 194612,
"costUSD": 9.39,
"sessions": 1
},
{
"label": "cc-source",
"tokens": 1844072,
"costUSD": 9.19,
"sessions": 2
},
{
"label": "mpp-service",
"tokens": 111782,
"costUSD": 7.1,
"sessions": 1
},
{
"label": "posthog-wizard",
"tokens": 85684,
"costUSD": 6.86,
"sessions": 1
},
{
"label": "tokenmaxing",
"tokens": 131606,
"costUSD": 5.69,
"sessions": 1
},
{
"label": "mcp-docs-server",
"tokens": 98153,
"costUSD": 4.88,
"sessions": 1
},
{
"label": "workos-cli",
"tokens": 16957,
"costUSD": 4.41,
"sessions": 1
},
{
"label": "next-authkit-example",
"tokens": 8616,
"costUSD": 4.01,
"sessions": 1
},
{
"label": "react-authkit-example",
"tokens": 100219,
"costUSD": 2.08,
"sessions": 1
},
{
"label": "authkit-remix",
"tokens": 49512,
"costUSD": 1.36,
"sessions": 1
},
{
"label": "nicknisi",
"tokens": 29722,
"costUSD": 0.83,
"sessions": 1
},
{
"label": "authkit-opennextjs-aws-example-app",
"tokens": 106413,
"costUSD": 0,
"sessions": 1
},
{
"label": "mcp-shop-cloudflare",
"tokens": 441139,
"costUSD": 0,
"sessions": 2
},
{
"label": "workos-php",
"tokens": 11300,
"costUSD": 0,
"sessions": 1
},
{
"label": "workos-python",
"tokens": 553790,
"costUSD": 0,
"sessions": 3
},
{
"label": "wizard",
"tokens": 11190528,
"costUSD": 0,
"sessions": 40
},
{
"label": "workos-go",
"tokens": 1521198,
"costUSD": 0,
"sessions": 3
},
{
"label": "tanstack-router",
"tokens": 493513,
"costUSD": 0,
"sessions": 2
},
{
"label": "widgets",
"tokens": 74640,
"costUSD": 0,
"sessions": 1
},
{
"label": "betterauth-workos",
"tokens": 1035967,
"costUSD": 0,
"sessions": 3
},
{
"label": "authkit-script",
"tokens": 117073,
"costUSD": 0,
"sessions": 1
}
],
"daily": [
{
"date": "2025-09-25",
"tokens": 18457410,
"costUSD": 94.63,
"sessions": 1,
"messages": 417,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
53,
220,
144
],
"byTool": {
"codex": {
"tokens": 18457410,
"costUSD": 94.63,
"sessions": 1,
"messages": 417
}
},
"byProvider": {
"openai": {
"tokens": 18457410,
"costUSD": 94.63
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5-codex",
"tokens": 18457410,
"costUSD": 94.63,
"sessions": 1,
"messages": 417
}
],
"byProject": {
"authkit-tanstack-start": {
"tokens": 18457410,
"costUSD": 94.63,
"sessions": 1
}
}
},
{
"date": "2025-09-26",
"tokens": 706658,
"costUSD": 0,
"sessions": 1,
"messages": 43,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
43,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"codex": {
"tokens": 706658,
"costUSD": 0,
"sessions": 1,
"messages": 43
}
},
"byProvider": {
"openai": {
"tokens": 706658,
"costUSD": 0
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 706658,
"costUSD": 0,
"sessions": 1,
"messages": 43
}
],
"byProject": {
"authkit-tanstack-start": {
"tokens": 706658,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2025-11-11",
"tokens": 106413,
"costUSD": 0,
"sessions": 1,
"messages": 9,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
9,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"codex": {
"tokens": 106413,
"costUSD": 0,
"sessions": 1,
"messages": 9
}
},
"byProvider": {
"openai": {
"tokens": 106413,
"costUSD": 0
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 106413,
"costUSD": 0,
"sessions": 1,
"messages": 9
}
],
"byProject": {
"authkit-opennextjs-aws-example-app": {
"tokens": 106413,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2025-11-12",
"tokens": 57259,
"costUSD": 0,
"sessions": 3,
"messages": 3,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"codex": {
"tokens": 57259,
"costUSD": 0,
"sessions": 3,
"messages": 3
}
},
"byProvider": {
"openai": {
"tokens": 57259,
"costUSD": 0
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 57259,
"costUSD": 0,
"sessions": 3,
"messages": 3
}
],
"byProject": {
"dotfiles": {
"tokens": 39578,
"costUSD": 0,
"sessions": 2
},
"workos-node": {
"tokens": 17681,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2025-11-13",
"tokens": 2094807,
"costUSD": 0,
"sessions": 6,
"messages": 102,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
30,
70,
0,
0,
0
],
"byTool": {
"codex": {
"tokens": 2094807,
"costUSD": 0,
"sessions": 6,
"messages": 102
}
},
"byProvider": {
"openai": {
"tokens": 2094807,
"costUSD": 0
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 2094807,
"costUSD": 0,
"sessions": 6,
"messages": 102
}
],
"byProject": {
"mcp-shop-cloudflare": {
"tokens": 441139,
"costUSD": 0,
"sessions": 2
},
"authkit-session": {
"tokens": 31208,
"costUSD": 0,
"sessions": 2
},
"claude-plugins": {
"tokens": 1622460,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2025-11-14",
"tokens": 23114,
"costUSD": 0,
"sessions": 1,
"messages": 1,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"codex": {
"tokens": 23114,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
},
"byProvider": {
"openai": {
"tokens": 23114,
"costUSD": 0
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 23114,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"authkit-session": {
"tokens": 23114,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2025-11-18",
"tokens": 1133883,
"costUSD": 0,
"sessions": 1,
"messages": 43,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
43,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"codex": {
"tokens": 1133883,
"costUSD": 0,
"sessions": 1,
"messages": 43
}
},
"byProvider": {
"openai": {
"tokens": 1133883,
"costUSD": 0
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 1133883,
"costUSD": 0,
"sessions": 1,
"messages": 43
}
],
"byProject": {
"authkit-nextjs": {
"tokens": 1133883,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2025-11-25",
"tokens": 11300,
"costUSD": 0,
"sessions": 1,
"messages": 1,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"codex": {
"tokens": 11300,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
},
"byProvider": {
"openai": {
"tokens": 11300,
"costUSD": 0
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 11300,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"workos-php": {
"tokens": 11300,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2025-12-08",
"tokens": 6997831,
"costUSD": 0,
"sessions": 1,
"messages": 146,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
44,
0,
0,
102,
0,
0
],
"byTool": {
"codex": {
"tokens": 6997831,
"costUSD": 0,
"sessions": 1,
"messages": 146
}
},
"byProvider": {
"openai": {
"tokens": 6997831,
"costUSD": 0
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 6997831,
"costUSD": 0,
"sessions": 1,
"messages": 146
}
],
"byProject": {
"authkit-tanstack-start": {
"tokens": 6997831,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2025-12-19",
"tokens": 22004,
"costUSD": 0,
"sessions": 1,
"messages": 1,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"codex": {
"tokens": 22004,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
},
"byProvider": {
"openai": {
"tokens": 22004,
"costUSD": 0
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 22004,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"authkit-nextjs": {
"tokens": 22004,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2025-12-20",
"tokens": 3507086,
"costUSD": 0,
"sessions": 3,
"messages": 141,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
141,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"codex": {
"tokens": 3507086,
"costUSD": 0,
"sessions": 3,
"messages": 141
}
},
"byProvider": {
"openai": {
"tokens": 3507086,
"costUSD": 0
}
},
"byModel": [
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 3507086,
"costUSD": 0,
"sessions": 3,
"messages": 141
}
],
"byProject": {
"authkit-nextjs": {
"tokens": 3507086,
"costUSD": 0,
"sessions": 3
}
}
},
{
"date": "2026-01-09",
"tokens": 1135456,
"costUSD": 0,
"sessions": 11,
"messages": 161,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
6,
15,
76,
0,
0,
11,
3,
50,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1135456,
"costUSD": 0,
"sessions": 11,
"messages": 161
}
},
"byProvider": {
"anthropic": {
"tokens": 1135456,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 836880,
"costUSD": 0,
"sessions": 11,
"messages": 107
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 298576,
"costUSD": 0,
"sessions": 10,
"messages": 54
}
],
"byProject": {
"workos-python": {
"tokens": 72265,
"costUSD": 0,
"sessions": 1
},
"authkit-react": {
"tokens": 29040,
"costUSD": 0,
"sessions": 1
},
"workos-node": {
"tokens": 381063,
"costUSD": 0,
"sessions": 4
},
"dotfiles": {
"tokens": 36206,
"costUSD": 0,
"sessions": 2
},
"authkit-tanstack-start": {
"tokens": 532940,
"costUSD": 0,
"sessions": 2
},
"workos": {
"tokens": 83942,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-01-10",
"tokens": 31959,
"costUSD": 0,
"sessions": 1,
"messages": 3,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 31959,
"costUSD": 0,
"sessions": 1,
"messages": 3
}
},
"byProvider": {
"anthropic": {
"tokens": 31959,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 18539,
"costUSD": 0,
"sessions": 1,
"messages": 2
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 13420,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"authkit-nextjs": {
"tokens": 31959,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-01-12",
"tokens": 1665752,
"costUSD": 0,
"sessions": 14,
"messages": 186,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
3,
70,
0,
6,
0,
6,
71,
9,
15,
0,
0,
6,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1665752,
"costUSD": 0,
"sessions": 14,
"messages": 186
}
},
"byProvider": {
"anthropic": {
"tokens": 1665752,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 584863,
"costUSD": 0,
"sessions": 11,
"messages": 74
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 466276,
"costUSD": 0,
"sessions": 14,
"messages": 83
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 614613,
"costUSD": 0,
"sessions": 5,
"messages": 29
}
],
"byProject": {
"claude-plugins": {
"tokens": 32175,
"costUSD": 0,
"sessions": 1
},
"workos-python": {
"tokens": 32672,
"costUSD": 0,
"sessions": 1
},
"authkit-session": {
"tokens": 74806,
"costUSD": 0,
"sessions": 1
},
"wizard": {
"tokens": 150860,
"costUSD": 0,
"sessions": 4
},
"workos-node": {
"tokens": 456890,
"costUSD": 0,
"sessions": 3
},
"nicknisi.com": {
"tokens": 30223,
"costUSD": 0,
"sessions": 1
},
"workos-go": {
"tokens": 816017,
"costUSD": 0,
"sessions": 1
},
"authkit-tanstack-start": {
"tokens": 72109,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2026-01-14",
"tokens": 694812,
"costUSD": 0,
"sessions": 4,
"messages": 52,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
6,
0,
21,
0,
0,
0,
25,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 694812,
"costUSD": 0,
"sessions": 4,
"messages": 52
}
},
"byProvider": {
"anthropic": {
"tokens": 694812,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 669097,
"costUSD": 0,
"sessions": 4,
"messages": 50
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 25715,
"costUSD": 0,
"sessions": 2,
"messages": 2
}
],
"byProject": {
"expo-authkit-example": {
"tokens": 268936,
"costUSD": 0,
"sessions": 1
},
"authkit-js": {
"tokens": 365641,
"costUSD": 0,
"sessions": 1
},
"nicknisi.com": {
"tokens": 60235,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2026-01-15",
"tokens": 1249240,
"costUSD": 0,
"sessions": 2,
"messages": 182,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
54,
0,
128,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1249240,
"costUSD": 0,
"sessions": 2,
"messages": 182
}
},
"byProvider": {
"anthropic": {
"tokens": 1249240,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1087823,
"costUSD": 0,
"sessions": 2,
"messages": 161
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 161417,
"costUSD": 0,
"sessions": 1,
"messages": 21
}
],
"byProject": {
"wizard": {
"tokens": 1249240,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2026-01-16",
"tokens": 742745,
"costUSD": 0,
"sessions": 3,
"messages": 127,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
21,
25,
0,
0,
0,
22,
0,
59,
0
],
"byTool": {
"claude-code": {
"tokens": 742745,
"costUSD": 0,
"sessions": 3,
"messages": 127
}
},
"byProvider": {
"anthropic": {
"tokens": 742745,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 545455,
"costUSD": 0,
"sessions": 2,
"messages": 93
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 135529,
"costUSD": 0,
"sessions": 1,
"messages": 12
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 61761,
"costUSD": 0,
"sessions": 1,
"messages": 22
}
],
"byProject": {
"wizard": {
"tokens": 742745,
"costUSD": 0,
"sessions": 3
}
}
},
{
"date": "2026-01-17",
"tokens": 925434,
"costUSD": 0,
"sessions": 4,
"messages": 164,
"hourCounts": [
0,
0,
0,
0,
0,
0,
53,
0,
0,
3,
45,
6,
0,
0,
57,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 925434,
"costUSD": 0,
"sessions": 4,
"messages": 164
}
},
"byProvider": {
"anthropic": {
"tokens": 925434,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 699935,
"costUSD": 0,
"sessions": 3,
"messages": 140
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 225499,
"costUSD": 0,
"sessions": 2,
"messages": 24
}
],
"byProject": {
"wizard": {
"tokens": 925434,
"costUSD": 0,
"sessions": 4
}
}
},
{
"date": "2026-01-18",
"tokens": 1181452,
"costUSD": 0,
"sessions": 2,
"messages": 182,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
43,
0,
0,
0,
0,
65,
74,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1181452,
"costUSD": 0,
"sessions": 2,
"messages": 182
}
},
"byProvider": {
"anthropic": {
"tokens": 1181452,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 626615,
"costUSD": 0,
"sessions": 2,
"messages": 130
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 554837,
"costUSD": 0,
"sessions": 1,
"messages": 52
}
],
"byProject": {
"wizard": {
"tokens": 1181452,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2026-01-20",
"tokens": 1180623,
"costUSD": 0,
"sessions": 3,
"messages": 235,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
54,
0,
0,
0,
49,
0,
0,
0,
0,
132,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1180623,
"costUSD": 0,
"sessions": 3,
"messages": 235
}
},
"byProvider": {
"anthropic": {
"tokens": 1180623,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 867770,
"costUSD": 0,
"sessions": 3,
"messages": 157
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 312853,
"costUSD": 0,
"sessions": 1,
"messages": 78
}
],
"byProject": {
"workos-python": {
"tokens": 448853,
"costUSD": 0,
"sessions": 1
},
"wizard": {
"tokens": 731770,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2026-01-21",
"tokens": 3349638,
"costUSD": 0,
"sessions": 6,
"messages": 496,
"hourCounts": [
0,
0,
0,
0,
0,
0,
101,
0,
0,
95,
0,
0,
74,
12,
214,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 3349638,
"costUSD": 0,
"sessions": 6,
"messages": 496
}
},
"byProvider": {
"anthropic": {
"tokens": 3349638,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1569868,
"costUSD": 0,
"sessions": 3,
"messages": 300
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 1779770,
"costUSD": 0,
"sessions": 4,
"messages": 196
}
],
"byProject": {
"wizard": {
"tokens": 1133065,
"costUSD": 0,
"sessions": 3
},
"authkit-nextjs": {
"tokens": 818237,
"costUSD": 0,
"sessions": 1
},
"workos": {
"tokens": 1398336,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2026-01-22",
"tokens": 800774,
"costUSD": 0,
"sessions": 4,
"messages": 158,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
31,
39,
39,
0,
0,
0,
0,
29,
20,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 800774,
"costUSD": 0,
"sessions": 4,
"messages": 158
}
},
"byProvider": {
"anthropic": {
"tokens": 800774,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 800774,
"costUSD": 0,
"sessions": 4,
"messages": 158
}
],
"byProject": {
"wizard": {
"tokens": 684697,
"costUSD": 0,
"sessions": 3
},
"tanstack-router": {
"tokens": 116077,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-01-23",
"tokens": 1318171,
"costUSD": 0,
"sessions": 8,
"messages": 266,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
39,
47,
0,
0,
54,
0,
8,
27,
24,
67,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1318171,
"costUSD": 0,
"sessions": 8,
"messages": 266
}
},
"byProvider": {
"anthropic": {
"tokens": 1318171,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 863663,
"costUSD": 0,
"sessions": 6,
"messages": 163
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 406750,
"costUSD": 0,
"sessions": 2,
"messages": 95
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 47758,
"costUSD": 0,
"sessions": 1,
"messages": 8
}
],
"byProject": {
"claude-plugins": {
"tokens": 84701,
"costUSD": 0,
"sessions": 1
},
"wizard": {
"tokens": 1047841,
"costUSD": 0,
"sessions": 6
},
"workos": {
"tokens": 185629,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-01-24",
"tokens": 645676,
"costUSD": 0,
"sessions": 2,
"messages": 82,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
60,
0,
0,
0,
0,
0,
0,
0,
0,
22,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 645676,
"costUSD": 0,
"sessions": 2,
"messages": 82
}
},
"byProvider": {
"anthropic": {
"tokens": 645676,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 361624,
"costUSD": 0,
"sessions": 2,
"messages": 42
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 284052,
"costUSD": 0,
"sessions": 1,
"messages": 40
}
],
"byProject": {
"wizard": {
"tokens": 645676,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2026-01-26",
"tokens": 381168,
"costUSD": 0,
"sessions": 2,
"messages": 84,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
84,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 381168,
"costUSD": 0,
"sessions": 2,
"messages": 84
}
},
"byProvider": {
"anthropic": {
"tokens": 381168,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 74640,
"costUSD": 0,
"sessions": 1,
"messages": 9
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 306528,
"costUSD": 0,
"sessions": 1,
"messages": 75
}
],
"byProject": {
"widgets": {
"tokens": 74640,
"costUSD": 0,
"sessions": 1
},
"betterauth-workos": {
"tokens": 306528,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-01-27",
"tokens": 557627,
"costUSD": 0,
"sessions": 2,
"messages": 137,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
137,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 557627,
"costUSD": 0,
"sessions": 2,
"messages": 137
}
},
"byProvider": {
"anthropic": {
"tokens": 557627,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 557627,
"costUSD": 0,
"sessions": 2,
"messages": 137
}
],
"byProject": {
"workos-node": {
"tokens": 263593,
"costUSD": 0,
"sessions": 1
},
"workos": {
"tokens": 294034,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-01-28",
"tokens": 4204381,
"costUSD": 0,
"sessions": 10,
"messages": 492,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
106,
0,
0,
0,
41,
58,
115,
48,
0,
0,
0,
85,
0,
39
],
"byTool": {
"claude-code": {
"tokens": 4204381,
"costUSD": 0,
"sessions": 10,
"messages": 492
}
},
"byProvider": {
"anthropic": {
"tokens": 4204381,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 908609,
"costUSD": 0,
"sessions": 4,
"messages": 163
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 1165360,
"costUSD": 0,
"sessions": 2,
"messages": 88
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 2130412,
"costUSD": 0,
"sessions": 6,
"messages": 241
}
],
"byProject": {
"claude-plugins": {
"tokens": 86786,
"costUSD": 0,
"sessions": 1
},
"cli": {
"tokens": 383386,
"costUSD": 0,
"sessions": 1
},
"wizard": {
"tokens": 2440449,
"costUSD": 0,
"sessions": 4
},
"tanstack-router": {
"tokens": 377436,
"costUSD": 0,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 186885,
"costUSD": 0,
"sessions": 1
},
"betterauth-workos": {
"tokens": 729439,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2026-01-29",
"tokens": 754963,
"costUSD": 0,
"sessions": 6,
"messages": 122,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
6,
0,
67,
7,
34,
0,
0,
8,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 754963,
"costUSD": 0,
"sessions": 6,
"messages": 122
}
},
"byProvider": {
"anthropic": {
"tokens": 754963,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 533573,
"costUSD": 0,
"sessions": 4,
"messages": 109
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 89619,
"costUSD": 0,
"sessions": 1,
"messages": 8
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 131771,
"costUSD": 0,
"sessions": 1,
"messages": 5
}
],
"byProject": {
"cli": {
"tokens": 115666,
"costUSD": 0,
"sessions": 3
},
"wizard": {
"tokens": 221390,
"costUSD": 0,
"sessions": 2
},
"workos-go": {
"tokens": 417907,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-01-30",
"tokens": 147303,
"costUSD": 0,
"sessions": 12,
"messages": 197,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
18,
16,
5,
10,
2,
24,
0,
42,
0,
0,
11,
16,
49,
4,
0
],
"byTool": {
"claude-code": {
"tokens": 147303,
"costUSD": 0,
"sessions": 12,
"messages": 197
}
},
"byProvider": {
"anthropic": {
"tokens": 147303,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 8,
"messages": 70
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 66507,
"costUSD": 0,
"sessions": 12,
"messages": 108
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 80796,
"costUSD": 0,
"sessions": 1,
"messages": 19
}
],
"byProject": {
"cli": {
"tokens": 111394,
"costUSD": 0,
"sessions": 9
},
"wizard": {
"tokens": 35909,
"costUSD": 0,
"sessions": 3
}
}
},
{
"date": "2026-01-31",
"tokens": 2167496,
"costUSD": 0,
"sessions": 7,
"messages": 193,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
7,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
18,
0,
17,
75,
52,
22
],
"byTool": {
"claude-code": {
"tokens": 2167496,
"costUSD": 0,
"sessions": 7,
"messages": 193
}
},
"byProvider": {
"anthropic": {
"tokens": 2167496,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 1703281,
"costUSD": 0,
"sessions": 7,
"messages": 85
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 464215,
"costUSD": 0,
"sessions": 3,
"messages": 101
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 7
}
],
"byProject": {
"cli": {
"tokens": 1515013,
"costUSD": 0,
"sessions": 5
},
"dotfiles": {
"tokens": 652483,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2026-02-01",
"tokens": 2027325,
"costUSD": 0,
"sessions": 6,
"messages": 116,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
21,
62,
0,
6,
27,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 2027325,
"costUSD": 0,
"sessions": 6,
"messages": 116
}
},
"byProvider": {
"anthropic": {
"tokens": 2027325,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 1874000,
"costUSD": 0,
"sessions": 6,
"messages": 58
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 153325,
"costUSD": 0,
"sessions": 1,
"messages": 58
}
],
"byProject": {
"cli": {
"tokens": 2027325,
"costUSD": 0,
"sessions": 6
}
}
},
{
"date": "2026-02-02",
"tokens": 3310521,
"costUSD": 0,
"sessions": 9,
"messages": 254,
"hourCounts": [
0,
0,
0,
0,
0,
13,
13,
22,
14,
2,
135,
10,
0,
11,
10,
7,
12,
0,
0,
0,
0,
3,
2,
0
],
"byTool": {
"claude-code": {
"tokens": 3310521,
"costUSD": 0,
"sessions": 9,
"messages": 254
}
},
"byProvider": {
"anthropic": {
"tokens": 3310521,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 2874932,
"costUSD": 0,
"sessions": 9,
"messages": 125
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 435589,
"costUSD": 0,
"sessions": 2,
"messages": 129
}
],
"byProject": {
"cli": {
"tokens": 3310521,
"costUSD": 0,
"sessions": 9
}
}
},
{
"date": "2026-02-03",
"tokens": 2957959,
"costUSD": 0,
"sessions": 7,
"messages": 240,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
37,
107,
33,
0,
0,
0,
0,
0,
0,
46,
2,
0,
0,
0,
0,
14,
1
],
"byTool": {
"claude-code": {
"tokens": 2957959,
"costUSD": 0,
"sessions": 7,
"messages": 240
}
},
"byProvider": {
"anthropic": {
"tokens": 2957959,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 2208744,
"costUSD": 0,
"sessions": 6,
"messages": 59
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 646244,
"costUSD": 0,
"sessions": 3,
"messages": 159
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 102971,
"costUSD": 0,
"sessions": 1,
"messages": 22
}
],
"byProject": {
"cli": {
"tokens": 2670685,
"costUSD": 0,
"sessions": 6
},
"workos-go": {
"tokens": 287274,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-02-04",
"tokens": 290627,
"costUSD": 0,
"sessions": 3,
"messages": 110,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
59,
2,
0,
49,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 290627,
"costUSD": 0,
"sessions": 3,
"messages": 110
}
},
"byProvider": {
"anthropic": {
"tokens": 290627,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 85217,
"costUSD": 0,
"sessions": 1,
"messages": 47
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 205410,
"costUSD": 0,
"sessions": 2,
"messages": 63
}
],
"byProject": {
"authkit-sveltekit": {
"tokens": 85217,
"costUSD": 0,
"sessions": 1
},
"cli": {
"tokens": 205410,
"costUSD": 0,
"sessions": 2
}
}
},
{
"date": "2026-02-05",
"tokens": 1882660,
"costUSD": 12.93,
"sessions": 4,
"messages": 247,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
49,
0,
0,
0,
2,
78,
21,
0,
97,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1882660,
"costUSD": 12.93,
"sessions": 4,
"messages": 247
}
},
"byProvider": {
"anthropic": {
"tokens": 1882660,
"costUSD": 12.93
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 659942,
"costUSD": 12.93,
"sessions": 2,
"messages": 36
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 272815,
"costUSD": 0,
"sessions": 2,
"messages": 110
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 741975,
"costUSD": 0,
"sessions": 1,
"messages": 99
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 207928,
"costUSD": 0,
"sessions": 1,
"messages": 2
}
],
"byProject": {
"workos-node": {
"tokens": 54003,
"costUSD": 0.14,
"sessions": 1
},
"cli": {
"tokens": 1828657,
"costUSD": 12.79,
"sessions": 3
}
}
},
{
"date": "2026-02-06",
"tokens": 3161908,
"costUSD": 20.15,
"sessions": 5,
"messages": 683,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
170,
69,
114,
0,
0,
0,
0,
0,
96,
0,
1,
219,
14,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 3161908,
"costUSD": 20.15,
"sessions": 5,
"messages": 683
}
},
"byProvider": {
"anthropic": {
"tokens": 3161908,
"costUSD": 20.15
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 907024,
"costUSD": 20.15,
"sessions": 1,
"messages": 141
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 1689012,
"costUSD": 0,
"sessions": 3,
"messages": 309
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 565872,
"costUSD": 0,
"sessions": 2,
"messages": 233
}
],
"byProject": {
"authkit-script": {
"tokens": 117073,
"costUSD": 0,
"sessions": 1
},
"authkit-js": {
"tokens": 438802,
"costUSD": 0,
"sessions": 1
},
"skills": {
"tokens": 2606033,
"costUSD": 20.15,
"sessions": 3
}
}
},
{
"date": "2026-02-07",
"tokens": 1538302,
"costUSD": 24.36,
"sessions": 4,
"messages": 322,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
96,
143,
83,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1538302,
"costUSD": 24.36,
"sessions": 4,
"messages": 322
}
},
"byProvider": {
"anthropic": {
"tokens": 1538302,
"costUSD": 24.36
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 765792,
"costUSD": 24.36,
"sessions": 2,
"messages": 116
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 355207,
"costUSD": 0,
"sessions": 1,
"messages": 96
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 417303,
"costUSD": 0,
"sessions": 3,
"messages": 110
}
],
"byProject": {
"authkit-nextjs": {
"tokens": 1538302,
"costUSD": 24.36,
"sessions": 4
}
}
},
{
"date": "2026-02-08",
"tokens": 445785,
"costUSD": 13.24,
"sessions": 1,
"messages": 104,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
101,
3,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 445785,
"costUSD": 13.24,
"sessions": 1,
"messages": 104
}
},
"byProvider": {
"anthropic": {
"tokens": 445785,
"costUSD": 13.24
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 397970,
"costUSD": 13.24,
"sessions": 1,
"messages": 101
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 47815,
"costUSD": 0,
"sessions": 1,
"messages": 3
}
],
"byProject": {
"authkit-nextjs": {
"tokens": 445785,
"costUSD": 13.24,
"sessions": 1
}
}
},
{
"date": "2026-02-09",
"tokens": 4413566,
"costUSD": 33.22,
"sessions": 11,
"messages": 926,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
72,
0,
0,
462,
147,
53,
184,
0,
0,
0,
0,
0,
0,
8
],
"byTool": {
"claude-code": {
"tokens": 4413566,
"costUSD": 33.22,
"sessions": 11,
"messages": 926
}
},
"byProvider": {
"anthropic": {
"tokens": 4413566,
"costUSD": 33.22
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 989425,
"costUSD": 33.22,
"sessions": 4,
"messages": 242
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1404247,
"costUSD": 0,
"sessions": 7,
"messages": 420
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 2019894,
"costUSD": 0,
"sessions": 3,
"messages": 264
}
],
"byProject": {
"claude-plugins": {
"tokens": 100551,
"costUSD": 2.02,
"sessions": 1
},
"cli": {
"tokens": 1884660,
"costUSD": 12.7,
"sessions": 7
},
"dotfiles": {
"tokens": 99436,
"costUSD": 0,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 218796,
"costUSD": 0,
"sessions": 1
},
"skills": {
"tokens": 2110123,
"costUSD": 18.5,
"sessions": 1
}
}
},
{
"date": "2026-02-10",
"tokens": 4246726,
"costUSD": 24.77,
"sessions": 9,
"messages": 907,
"hourCounts": [
0,
0,
0,
0,
0,
0,
76,
0,
32,
42,
0,
0,
156,
20,
0,
138,
0,
0,
156,
60,
227,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 4246726,
"costUSD": 24.77,
"sessions": 9,
"messages": 907
}
},
"byProvider": {
"anthropic": {
"tokens": 4246726,
"costUSD": 24.77
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 1059705,
"costUSD": 24.77,
"sessions": 3,
"messages": 97
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 709294,
"costUSD": 0,
"sessions": 1,
"messages": 24
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2477727,
"costUSD": 0,
"sessions": 7,
"messages": 786
}
],
"byProject": {
"claude-plugins": {
"tokens": 262993,
"costUSD": 5.11,
"sessions": 1
},
"workos": {
"tokens": 1204911,
"costUSD": 0,
"sessions": 1
},
"cli": {
"tokens": 1507757,
"costUSD": 10.23,
"sessions": 4
},
"dotfiles": {
"tokens": 83880,
"costUSD": 0,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 403631,
"costUSD": 0,
"sessions": 1
},
"skills": {
"tokens": 783554,
"costUSD": 9.43,
"sessions": 1
}
}
},
{
"date": "2026-02-11",
"tokens": 2566286,
"costUSD": 29.17,
"sessions": 3,
"messages": 235,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
184,
14,
0,
0,
0,
0,
0,
0,
0,
37,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 2566286,
"costUSD": 29.17,
"sessions": 3,
"messages": 235
}
},
"byProvider": {
"anthropic": {
"tokens": 2566286,
"costUSD": 29.17
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 1110745,
"costUSD": 29.17,
"sessions": 2,
"messages": 198
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 1455541,
"costUSD": 0,
"sessions": 1,
"messages": 37
}
],
"byProject": {
"claude-plugins": {
"tokens": 250353,
"costUSD": 4.84,
"sessions": 1
},
"workos-node": {
"tokens": 860392,
"costUSD": 24.33,
"sessions": 1
},
"skills": {
"tokens": 1455541,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-02-12",
"tokens": 891650,
"costUSD": 51.13,
"sessions": 3,
"messages": 273,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
14,
143,
79,
37,
0
],
"byTool": {
"claude-code": {
"tokens": 891650,
"costUSD": 51.13,
"sessions": 3,
"messages": 273
}
},
"byProvider": {
"anthropic": {
"tokens": 891650,
"costUSD": 51.13
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 891650,
"costUSD": 51.13,
"sessions": 3,
"messages": 273
}
],
"byProject": {
"cli": {
"tokens": 687848,
"costUSD": 46.88,
"sessions": 2
},
"dotfiles": {
"tokens": 203802,
"costUSD": 4.24,
"sessions": 1
}
}
},
{
"date": "2026-02-13",
"tokens": 2662869,
"costUSD": 101.99,
"sessions": 5,
"messages": 576,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
15,
318,
36,
207
],
"byTool": {
"claude-code": {
"tokens": 2662869,
"costUSD": 101.99,
"sessions": 5,
"messages": 576
}
},
"byProvider": {
"anthropic": {
"tokens": 2662869,
"costUSD": 101.99
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 2316719,
"costUSD": 101.99,
"sessions": 5,
"messages": 490
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 346150,
"costUSD": 0,
"sessions": 2,
"messages": 85
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"claude-plugins": {
"tokens": 1682927,
"costUSD": 70.33,
"sessions": 2
},
"workos-node": {
"tokens": 272286,
"costUSD": 5.45,
"sessions": 1
},
"cli": {
"tokens": 707656,
"costUSD": 26.21,
"sessions": 2
}
}
},
{
"date": "2026-02-14",
"tokens": 10190947,
"costUSD": 435.84,
"sessions": 5,
"messages": 1013,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
243,
209,
6,
13,
202,
36,
0,
0,
131,
31,
0,
0,
142,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 10190947,
"costUSD": 435.84,
"sessions": 5,
"messages": 1013
}
},
"byProvider": {
"anthropic": {
"tokens": 10190947,
"costUSD": 435.84
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 9587217,
"costUSD": 435.84,
"sessions": 5,
"messages": 921
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 336492,
"costUSD": 0,
"sessions": 2,
"messages": 69
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-5-20250929",
"tokens": 267238,
"costUSD": 0,
"sessions": 1,
"messages": 23
}
],
"byProject": {
"claude-plugins": {
"tokens": 456146,
"costUSD": 17.75,
"sessions": 2
},
"cli": {
"tokens": 9628592,
"costUSD": 411.62,
"sessions": 2
},
"dotfiles": {
"tokens": 106209,
"costUSD": 6.47,
"sessions": 1
}
}
},
{
"date": "2026-02-17",
"tokens": 10163806,
"costUSD": 418.24,
"sessions": 7,
"messages": 2059,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
60,
42,
0,
324,
56,
5,
0,
79,
75,
416,
423,
1,
0,
0,
339,
239
],
"byTool": {
"claude-code": {
"tokens": 10163806,
"costUSD": 418.24,
"sessions": 7,
"messages": 2059
}
},
"byProvider": {
"anthropic": {
"tokens": 10163806,
"costUSD": 418.24
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 7621326,
"costUSD": 418.24,
"sessions": 7,
"messages": 1505
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2542480,
"costUSD": 0,
"sessions": 4,
"messages": 554
}
],
"byProject": {
"cli": {
"tokens": 8193135,
"costUSD": 341.46,
"sessions": 5
},
"expo-authkit-example": {
"tokens": 731496,
"costUSD": 17.82,
"sessions": 1
},
"workos-cli": {
"tokens": 16957,
"costUSD": 4.41,
"sessions": 1
},
"workos": {
"tokens": 1222218,
"costUSD": 54.55,
"sessions": 1
}
}
},
{
"date": "2026-02-18",
"tokens": 15540553,
"costUSD": 522.12,
"sessions": 11,
"messages": 1236,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
94,
36,
184,
194,
68,
89,
251,
127,
20,
0,
0,
70,
103,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 15540553,
"costUSD": 522.12,
"sessions": 11,
"messages": 1236
}
},
"byProvider": {
"anthropic": {
"tokens": 15540553,
"costUSD": 522.12
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 14203422,
"costUSD": 522.12,
"sessions": 4,
"messages": 938
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 3,
"messages": 3
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 632360,
"costUSD": 0,
"sessions": 3,
"messages": 81
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 704771,
"costUSD": 0,
"sessions": 4,
"messages": 214
}
],
"byProject": {
"claude-plugins": {
"tokens": 35136,
"costUSD": 0.94,
"sessions": 1
},
"cli": {
"tokens": 13667092,
"costUSD": 499.51,
"sessions": 2
},
"expo-authkit-example": {
"tokens": 875215,
"costUSD": 0,
"sessions": 7
},
"skills": {
"tokens": 963110,
"costUSD": 21.67,
"sessions": 1
}
}
},
{
"date": "2026-02-19",
"tokens": 23910901,
"costUSD": 821.31,
"sessions": 10,
"messages": 2535,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
286,
235,
335,
26,
155,
32,
0,
221,
7,
221,
115,
225,
0,
258,
327,
92
],
"byTool": {
"claude-code": {
"tokens": 23910901,
"costUSD": 821.31,
"sessions": 10,
"messages": 2535
}
},
"byProvider": {
"anthropic": {
"tokens": 23910901,
"costUSD": 821.31
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 21402417,
"costUSD": 819.22,
"sessions": 10,
"messages": 1925
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 388928,
"costUSD": 2.09,
"sessions": 2,
"messages": 93
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2119556,
"costUSD": 0,
"sessions": 4,
"messages": 517
}
],
"byProject": {
"claude-plugins": {
"tokens": 1891939,
"costUSD": 44.9,
"sessions": 2
},
"cli": {
"tokens": 795829,
"costUSD": 13.31,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 186053,
"costUSD": 4.4,
"sessions": 2
},
"skills": {
"tokens": 21037080,
"costUSD": 758.71,
"sessions": 6
}
}
},
{
"date": "2026-02-20",
"tokens": 12443516,
"costUSD": 312.86,
"sessions": 5,
"messages": 1218,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
130,
407,
12,
315,
107,
4,
148,
89,
0,
0,
0,
0,
6,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 12443516,
"costUSD": 312.86,
"sessions": 5,
"messages": 1218
}
},
"byProvider": {
"anthropic": {
"tokens": 12443516,
"costUSD": 312.86
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 10491295,
"costUSD": 312.86,
"sessions": 5,
"messages": 765
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1952221,
"costUSD": 0,
"sessions": 4,
"messages": 452
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"cli": {
"tokens": 3315854,
"costUSD": 75.84,
"sessions": 3
},
"react-authkit-example": {
"tokens": 100219,
"costUSD": 2.08,
"sessions": 1
},
"next-authkit-example": {
"tokens": 8616,
"costUSD": 4.01,
"sessions": 1
},
"skills": {
"tokens": 6019614,
"costUSD": 140.62,
"sessions": 1
},
"authkit-tanstack-start": {
"tokens": 2999213,
"costUSD": 90.31,
"sessions": 1
}
}
},
{
"date": "2026-02-21",
"tokens": 574855,
"costUSD": 6.63,
"sessions": 1,
"messages": 55,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
55,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 574855,
"costUSD": 6.63,
"sessions": 1,
"messages": 55
}
},
"byProvider": {
"anthropic": {
"tokens": 574855,
"costUSD": 6.63
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 353352,
"costUSD": 6.63,
"sessions": 1,
"messages": 3
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 221503,
"costUSD": 0,
"sessions": 1,
"messages": 51
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"authkit-tanstack-start": {
"tokens": 574855,
"costUSD": 6.63,
"sessions": 1
}
}
},
{
"date": "2026-02-23",
"tokens": 12934980,
"costUSD": 457.92,
"sessions": 5,
"messages": 1028,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
182,
148,
89,
122,
102,
0,
157,
90,
74,
64,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 12934980,
"costUSD": 457.92,
"sessions": 5,
"messages": 1028
}
},
"byProvider": {
"anthropic": {
"tokens": 12934980,
"costUSD": 457.92
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 11731134,
"costUSD": 456.66,
"sessions": 5,
"messages": 873
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 170668,
"costUSD": 1.27,
"sessions": 2,
"messages": 77
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1033178,
"costUSD": 0,
"sessions": 2,
"messages": 74
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 2,
"messages": 4
}
],
"byProject": {
"cli": {
"tokens": 7938863,
"costUSD": 204.65,
"sessions": 1
},
"skills": {
"tokens": 4249428,
"costUSD": 192.05,
"sessions": 3
},
"authkit-tanstack-start": {
"tokens": 746689,
"costUSD": 61.22,
"sessions": 1
}
}
},
{
"date": "2026-02-24",
"tokens": 8963151,
"costUSD": 480.05,
"sessions": 10,
"messages": 1635,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
239,
31,
33,
249,
286,
18,
69,
97,
0,
483,
130,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 8963151,
"costUSD": 480.05,
"sessions": 10,
"messages": 1635
}
},
"byProvider": {
"anthropic": {
"tokens": 8963151,
"costUSD": 480.05
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 7737539,
"costUSD": 479.91,
"sessions": 10,
"messages": 1442
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 36965,
"costUSD": 0.15,
"sessions": 1,
"messages": 5
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1188647,
"costUSD": 0,
"sessions": 4,
"messages": 187
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"workos-node": {
"tokens": 398019,
"costUSD": 12.17,
"sessions": 1
},
"cli": {
"tokens": 597580,
"costUSD": 26.55,
"sessions": 3
},
"authkit-nextjs": {
"tokens": 1467841,
"costUSD": 105.6,
"sessions": 1
},
"skills": {
"tokens": 6499711,
"costUSD": 335.73,
"sessions": 6
}
}
},
{
"date": "2026-02-25",
"tokens": 15529300,
"costUSD": 236.69,
"sessions": 8,
"messages": 1036,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
5,
46,
125,
58,
0,
176,
219,
371,
36,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 6322842,
"costUSD": 236.69,
"sessions": 7,
"messages": 887
},
"codex": {
"tokens": 9206458,
"costUSD": 0,
"sessions": 1,
"messages": 149
}
},
"byProvider": {
"anthropic": {
"tokens": 6322842,
"costUSD": 236.69
},
"openai": {
"tokens": 9206458,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 4558547,
"costUSD": 235.76,
"sessions": 7,
"messages": 691
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 211380,
"costUSD": 0.93,
"sessions": 1,
"messages": 34
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1552915,
"costUSD": 0,
"sessions": 4,
"messages": 162
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 9206458,
"costUSD": 0,
"sessions": 1,
"messages": 149
}
],
"byProject": {
"skills": {
"tokens": 14803564,
"costUSD": 216.88,
"sessions": 6
},
"cli": {
"tokens": 725736,
"costUSD": 19.81,
"sessions": 2
}
}
},
{
"date": "2026-02-26",
"tokens": 30300017,
"costUSD": 191.62,
"sessions": 23,
"messages": 1242,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
117,
51,
74,
64,
240,
2,
269,
418,
7,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 3877397,
"costUSD": 191.62,
"sessions": 17,
"messages": 794
},
"codex": {
"tokens": 26422620,
"costUSD": 0,
"sessions": 6,
"messages": 448
}
},
"byProvider": {
"anthropic": {
"tokens": 3877397,
"costUSD": 191.62
},
"openai": {
"tokens": 26422620,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 3364894,
"costUSD": 191.49,
"sessions": 8,
"messages": 641
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 24224,
"costUSD": 0.13,
"sessions": 1,
"messages": 5
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 11,
"messages": 30
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 488279,
"costUSD": 0,
"sessions": 1,
"messages": 118
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5",
"tokens": 13026844,
"costUSD": 0,
"sessions": 5,
"messages": 292
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 13395776,
"costUSD": 0,
"sessions": 1,
"messages": 156
}
],
"byProject": {
"skills": {
"tokens": 22050320,
"costUSD": 125.56,
"sessions": 18
},
"cli": {
"tokens": 489463,
"costUSD": 36.28,
"sessions": 1
},
"workos": {
"tokens": 7760234,
"costUSD": 29.78,
"sessions": 4
}
}
},
{
"date": "2026-02-27",
"tokens": 11587813,
"costUSD": 363.64,
"sessions": 8,
"messages": 1295,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
96,
74,
484,
176,
110,
59,
0,
101,
195,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 10636508,
"costUSD": 363.64,
"sessions": 7,
"messages": 1289
},
"codex": {
"tokens": 951305,
"costUSD": 0,
"sessions": 1,
"messages": 6
}
},
"byProvider": {
"anthropic": {
"tokens": 10636508,
"costUSD": 363.64
},
"openai": {
"tokens": 951305,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 8379241,
"costUSD": 362.74,
"sessions": 7,
"messages": 765
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 180328,
"costUSD": 0.9,
"sessions": 1,
"messages": 27
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2076939,
"costUSD": 0,
"sessions": 3,
"messages": 496
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 951305,
"costUSD": 0,
"sessions": 1,
"messages": 6
}
],
"byProject": {
"claude-plugins": {
"tokens": 3178739,
"costUSD": 101.19,
"sessions": 2
},
"nicknisi.com": {
"tokens": 3524547,
"costUSD": 86.59,
"sessions": 2
},
"skills": {
"tokens": 4335557,
"costUSD": 145.78,
"sessions": 3
},
"cli": {
"tokens": 409144,
"costUSD": 27.24,
"sessions": 2
},
"workos": {
"tokens": 139826,
"costUSD": 2.84,
"sessions": 1
}
}
},
{
"date": "2026-02-28",
"tokens": 9162253,
"costUSD": 387.64,
"sessions": 5,
"messages": 1343,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
77,
0,
253,
784,
229,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 9162253,
"costUSD": 387.64,
"sessions": 5,
"messages": 1343
}
},
"byProvider": {
"anthropic": {
"tokens": 9162253,
"costUSD": 387.64
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 6448251,
"costUSD": 384.19,
"sessions": 5,
"messages": 942
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 756126,
"costUSD": 3.45,
"sessions": 3,
"messages": 77
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1957876,
"costUSD": 0,
"sessions": 3,
"messages": 324
}
],
"byProject": {
"cli": {
"tokens": 9162253,
"costUSD": 387.64,
"sessions": 5
}
}
},
{
"date": "2026-03-02",
"tokens": 34969691,
"costUSD": 1233.74,
"sessions": 17,
"messages": 3899,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
474,
221,
459,
1,
53,
144,
1119,
63,
273,
207,
182,
604,
99,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 34969691,
"costUSD": 1233.74,
"sessions": 17,
"messages": 3899
}
},
"byProvider": {
"anthropic": {
"tokens": 34969691,
"costUSD": 1233.74
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 28408847,
"costUSD": 1232.83,
"sessions": 17,
"messages": 2699
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 188561,
"costUSD": 0.91,
"sessions": 1,
"messages": 27
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 6372283,
"costUSD": 0,
"sessions": 13,
"messages": 1172
}
],
"byProject": {
"claude-plugins": {
"tokens": 9579474,
"costUSD": 265.06,
"sessions": 4
},
"workos": {
"tokens": 631167,
"costUSD": 17.41,
"sessions": 1
},
"cli": {
"tokens": 18128861,
"costUSD": 703.42,
"sessions": 10
},
"dotfiles": {
"tokens": 5459517,
"costUSD": 138.89,
"sessions": 2
},
"authkit-nextjs": {
"tokens": 1170672,
"costUSD": 108.96,
"sessions": 1
}
}
},
{
"date": "2026-03-03",
"tokens": 4554938,
"costUSD": 238.64,
"sessions": 3,
"messages": 535,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
82,
0,
0,
56,
120,
40,
0,
79,
83,
53,
22,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 4554938,
"costUSD": 238.64,
"sessions": 3,
"messages": 535
}
},
"byProvider": {
"anthropic": {
"tokens": 4554938,
"costUSD": 238.64
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 3052786,
"costUSD": 238.64,
"sessions": 3,
"messages": 462
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1502152,
"costUSD": 0,
"sessions": 1,
"messages": 73
}
],
"byProject": {
"claude-plugins": {
"tokens": 348877,
"costUSD": 15.23,
"sessions": 1
},
"cli": {
"tokens": 2765230,
"costUSD": 138.55,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 1440831,
"costUSD": 84.86,
"sessions": 1
}
}
},
{
"date": "2026-03-04",
"tokens": 11336008,
"costUSD": 403.27,
"sessions": 11,
"messages": 1969,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
25,
172,
1046,
148,
41,
16,
261,
198,
62,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 11336008,
"costUSD": 403.27,
"sessions": 11,
"messages": 1969
}
},
"byProvider": {
"anthropic": {
"tokens": 11336008,
"costUSD": 403.27
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 7905521,
"costUSD": 398.75,
"sessions": 11,
"messages": 1217
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 720686,
"costUSD": 4.52,
"sessions": 3,
"messages": 133
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2709801,
"costUSD": 0,
"sessions": 7,
"messages": 619
}
],
"byProject": {
"cli": {
"tokens": 8341350,
"costUSD": 269.31,
"sessions": 8
},
"skills": {
"tokens": 777827,
"costUSD": 22.68,
"sessions": 1
},
"workos": {
"tokens": 2216831,
"costUSD": 111.28,
"sessions": 2
}
}
},
{
"date": "2026-03-05",
"tokens": 4192144,
"costUSD": 316.27,
"sessions": 8,
"messages": 1269,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
27,
247,
106,
120,
85,
194,
262,
93,
0,
2,
133,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 4192144,
"costUSD": 316.27,
"sessions": 8,
"messages": 1269
}
},
"byProvider": {
"anthropic": {
"tokens": 4192144,
"costUSD": 316.27
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 3421843,
"costUSD": 316.27,
"sessions": 7,
"messages": 1156
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 770301,
"costUSD": 0,
"sessions": 1,
"messages": 112
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"cli": {
"tokens": 3894362,
"costUSD": 301.47,
"sessions": 4
},
"dotfiles": {
"tokens": 297782,
"costUSD": 14.79,
"sessions": 3
},
"skills": {
"tokens": 0,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-03-06",
"tokens": 7924616,
"costUSD": 370.8,
"sessions": 6,
"messages": 1928,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
565,
13,
29,
59,
37,
162,
328,
632,
72,
0,
0,
7,
24,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 7743126,
"costUSD": 370.8,
"sessions": 5,
"messages": 1921
},
"codex": {
"tokens": 181490,
"costUSD": 0,
"sessions": 1,
"messages": 7
}
},
"byProvider": {
"anthropic": {
"tokens": 7743126,
"costUSD": 370.8
},
"openai": {
"tokens": 181490,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 6961783,
"costUSD": 370.8,
"sessions": 5,
"messages": 1686
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 781343,
"costUSD": 0,
"sessions": 2,
"messages": 234
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 181490,
"costUSD": 0,
"sessions": 1,
"messages": 7
}
],
"byProject": {
"cli": {
"tokens": 1095611,
"costUSD": 18.21,
"sessions": 1
},
"case": {
"tokens": 655408,
"costUSD": 16.93,
"sessions": 2
},
"skills": {
"tokens": 6173597,
"costUSD": 335.66,
"sessions": 3
}
}
},
{
"date": "2026-03-07",
"tokens": 16553196,
"costUSD": 844.66,
"sessions": 10,
"messages": 3124,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
486,
88,
1344,
971,
168,
65,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 16224729,
"costUSD": 844.66,
"sessions": 8,
"messages": 3112
},
"codex": {
"tokens": 328467,
"costUSD": 0,
"sessions": 2,
"messages": 12
}
},
"byProvider": {
"anthropic": {
"tokens": 16224729,
"costUSD": 844.66
},
"openai": {
"tokens": 328467,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 15127638,
"costUSD": 844.66,
"sessions": 8,
"messages": 2824
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1097091,
"costUSD": 0,
"sessions": 3,
"messages": 286
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 2,
"messages": 2
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 328467,
"costUSD": 0,
"sessions": 2,
"messages": 12
}
],
"byProject": {
"cli": {
"tokens": 3333117,
"costUSD": 175.57,
"sessions": 4
},
"dotfiles": {
"tokens": 56688,
"costUSD": 1.29,
"sessions": 1
},
"case": {
"tokens": 10141101,
"costUSD": 560.19,
"sessions": 3
},
"skills": {
"tokens": 3022290,
"costUSD": 107.61,
"sessions": 3
}
}
},
{
"date": "2026-03-08",
"tokens": 25231494,
"costUSD": 1206.83,
"sessions": 12,
"messages": 4622,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
329,
749,
885,
424,
0,
0,
51,
373,
263,
170,
202,
648,
528,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 15971739,
"costUSD": 1206.83,
"sessions": 11,
"messages": 4526
},
"codex": {
"tokens": 9259755,
"costUSD": 0,
"sessions": 1,
"messages": 96
}
},
"byProvider": {
"anthropic": {
"tokens": 15971739,
"costUSD": 1206.83
},
"openai": {
"tokens": 9259755,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 13269571,
"costUSD": 1206.43,
"sessions": 11,
"messages": 3957
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 51469,
"costUSD": 0.4,
"sessions": 1,
"messages": 30
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2650699,
"costUSD": 0,
"sessions": 4,
"messages": 538
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 9259755,
"costUSD": 0,
"sessions": 1,
"messages": 96
}
],
"byProject": {
"authkit-nextjs": {
"tokens": 3155215,
"costUSD": 200.39,
"sessions": 5
},
"case": {
"tokens": 20000424,
"costUSD": 882.03,
"sessions": 5
},
"skills": {
"tokens": 1047490,
"costUSD": 74.95,
"sessions": 1
},
"authkit-tanstack-start": {
"tokens": 1028365,
"costUSD": 49.46,
"sessions": 1
}
}
},
{
"date": "2026-03-09",
"tokens": 4606715,
"costUSD": 156.69,
"sessions": 6,
"messages": 885,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
72,
129,
68,
148,
19,
3,
0,
0,
256,
190,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 4606715,
"costUSD": 156.69,
"sessions": 6,
"messages": 885
}
},
"byProvider": {
"anthropic": {
"tokens": 4606715,
"costUSD": 156.69
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 3650066,
"costUSD": 156.69,
"sessions": 6,
"messages": 667
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 956649,
"costUSD": 0,
"sessions": 2,
"messages": 218
}
],
"byProject": {
"cli": {
"tokens": 1915063,
"costUSD": 63.32,
"sessions": 2
},
"case": {
"tokens": 1547466,
"costUSD": 50.42,
"sessions": 2
},
"skills": {
"tokens": 369665,
"costUSD": 32.74,
"sessions": 1
},
"authkit-tanstack-start": {
"tokens": 774521,
"costUSD": 10.21,
"sessions": 1
}
}
},
{
"date": "2026-03-10",
"tokens": 10072564,
"costUSD": 566.89,
"sessions": 12,
"messages": 2778,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
255,
504,
2,
6,
0,
12,
3,
51,
96,
551,
461,
0,
0,
368,
469,
0
],
"byTool": {
"claude-code": {
"tokens": 10072564,
"costUSD": 566.89,
"sessions": 12,
"messages": 2778
}
},
"byProvider": {
"anthropic": {
"tokens": 10072564,
"costUSD": 566.89
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 8148655,
"costUSD": 566.89,
"sessions": 10,
"messages": 2479
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1923909,
"costUSD": 0,
"sessions": 6,
"messages": 279
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 3,
"messages": 20
}
],
"byProject": {
"cli": {
"tokens": 6182363,
"costUSD": 414.83,
"sessions": 6
},
"dotfiles": {
"tokens": 516016,
"costUSD": 4.36,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 1573681,
"costUSD": 105.97,
"sessions": 1
},
"case": {
"tokens": 1502630,
"costUSD": 34.26,
"sessions": 3
},
"workos": {
"tokens": 297874,
"costUSD": 7.47,
"sessions": 1
}
}
},
{
"date": "2026-03-11",
"tokens": 9269960,
"costUSD": 319.26,
"sessions": 13,
"messages": 1734,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
229,
51,
530,
157,
46,
104,
37,
0,
0,
0,
16,
276,
0,
0,
0,
288
],
"byTool": {
"claude-code": {
"tokens": 9269960,
"costUSD": 319.26,
"sessions": 13,
"messages": 1734
}
},
"byProvider": {
"anthropic": {
"tokens": 9269960,
"costUSD": 319.26
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 6266682,
"costUSD": 318.66,
"sessions": 13,
"messages": 1357
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 92669,
"costUSD": 0.6,
"sessions": 1,
"messages": 37
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2910609,
"costUSD": 0,
"sessions": 4,
"messages": 340
}
],
"byProject": {
"workos-node": {
"tokens": 123125,
"costUSD": 3.8,
"sessions": 1
},
"dotfiles": {
"tokens": 798548,
"costUSD": 15.84,
"sessions": 1
},
"cli": {
"tokens": 1530496,
"costUSD": 112.12,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 2655835,
"costUSD": 73.08,
"sessions": 3
},
"case": {
"tokens": 1398730,
"costUSD": 5.37,
"sessions": 1
},
"authkit-tanstack-start": {
"tokens": 1654080,
"costUSD": 42.63,
"sessions": 3
},
"workos": {
"tokens": 1109146,
"costUSD": 66.43,
"sessions": 3
}
}
},
{
"date": "2026-03-12",
"tokens": 14124598,
"costUSD": 645.96,
"sessions": 9,
"messages": 2143,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
80,
53,
179,
89,
141,
108,
82,
124,
9,
0,
365,
64,
403,
105,
0,
341,
0
],
"byTool": {
"claude-code": {
"tokens": 13180842,
"costUSD": 645.96,
"sessions": 8,
"messages": 2119
},
"codex": {
"tokens": 943756,
"costUSD": 0,
"sessions": 1,
"messages": 24
}
},
"byProvider": {
"anthropic": {
"tokens": 13180842,
"costUSD": 645.96
},
"openai": {
"tokens": 943756,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 11641510,
"costUSD": 645.96,
"sessions": 8,
"messages": 1921
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 2,
"messages": 3
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1539332,
"costUSD": 0,
"sessions": 1,
"messages": 195
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 943756,
"costUSD": 0,
"sessions": 1,
"messages": 24
}
],
"byProject": {
"mcp-docs-server": {
"tokens": 98153,
"costUSD": 4.88,
"sessions": 1
},
"cli": {
"tokens": 5942636,
"costUSD": 269.79,
"sessions": 2
},
"authkit-nextjs": {
"tokens": 5334443,
"costUSD": 248.32,
"sessions": 4
},
"case": {
"tokens": 434891,
"costUSD": 26.4,
"sessions": 1
},
"workos": {
"tokens": 2314475,
"costUSD": 96.57,
"sessions": 1
}
}
},
{
"date": "2026-03-13",
"tokens": 20607318,
"costUSD": 342.41,
"sessions": 16,
"messages": 1971,
"hourCounts": [
0,
0,
0,
0,
0,
0,
537,
266,
95,
919,
103,
51,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 10627838,
"costUSD": 342.41,
"sessions": 11,
"messages": 1786
},
"codex": {
"tokens": 9979480,
"costUSD": 0,
"sessions": 5,
"messages": 185
}
},
"byProvider": {
"anthropic": {
"tokens": 10627838,
"costUSD": 342.41
},
"openai": {
"tokens": 9979480,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 9728130,
"costUSD": 342.41,
"sessions": 11,
"messages": 1560
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 899708,
"costUSD": 0,
"sessions": 2,
"messages": 226
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 9979480,
"costUSD": 0,
"sessions": 5,
"messages": 185
}
],
"byProject": {
"workos": {
"tokens": 1184299,
"costUSD": 28.35,
"sessions": 1
},
"cli": {
"tokens": 16844728,
"costUSD": 300.81,
"sessions": 12
},
"authkit-nextjs": {
"tokens": 2578291,
"costUSD": 13.25,
"sessions": 3
}
}
},
{
"date": "2026-03-14",
"tokens": 14589243,
"costUSD": 492.76,
"sessions": 18,
"messages": 2642,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
203,
579,
56,
516,
107,
362,
28,
76,
0,
0,
1,
408,
293,
8,
5
],
"byTool": {
"claude-code": {
"tokens": 14173983,
"costUSD": 492.76,
"sessions": 16,
"messages": 2624
},
"codex": {
"tokens": 415260,
"costUSD": 0,
"sessions": 2,
"messages": 18
}
},
"byProvider": {
"anthropic": {
"tokens": 14173983,
"costUSD": 492.76
},
"openai": {
"tokens": 415260,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 8211433,
"costUSD": 492.76,
"sessions": 16,
"messages": 1812
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 5962550,
"costUSD": 0,
"sessions": 7,
"messages": 807
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 2,
"messages": 5
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 415260,
"costUSD": 0,
"sessions": 2,
"messages": 18
}
],
"byProject": {
"case": {
"tokens": 12302683,
"costUSD": 424.61,
"sessions": 15
},
"authkit-tanstack-start": {
"tokens": 2286560,
"costUSD": 68.15,
"sessions": 3
}
}
},
{
"date": "2026-03-15",
"tokens": 248863,
"costUSD": 4.93,
"sessions": 1,
"messages": 5,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
4,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 248863,
"costUSD": 4.93,
"sessions": 1,
"messages": 5
}
},
"byProvider": {
"anthropic": {
"tokens": 248863,
"costUSD": 4.93
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 248863,
"costUSD": 4.93,
"sessions": 1,
"messages": 5
}
],
"byProject": {
"authkit-tanstack-start": {
"tokens": 248863,
"costUSD": 4.93,
"sessions": 1
}
}
},
{
"date": "2026-03-16",
"tokens": 14509044,
"costUSD": 540.18,
"sessions": 21,
"messages": 3265,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
71,
408,
541,
289,
95,
2,
266,
290,
359,
584,
0,
0,
0,
0,
30,
330
],
"byTool": {
"claude-code": {
"tokens": 12005854,
"costUSD": 540.18,
"sessions": 20,
"messages": 3229
},
"codex": {
"tokens": 2503190,
"costUSD": 0,
"sessions": 1,
"messages": 36
}
},
"byProvider": {
"anthropic": {
"tokens": 12005854,
"costUSD": 540.18
},
"openai": {
"tokens": 2503190,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 7853390,
"costUSD": 527.14,
"sessions": 14,
"messages": 2510
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 1851986,
"costUSD": 13.04,
"sessions": 8,
"messages": 372
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2300478,
"costUSD": 0,
"sessions": 3,
"messages": 347
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 2503190,
"costUSD": 0,
"sessions": 1,
"messages": 36
}
],
"byProject": {
"authkit-session": {
"tokens": 1741332,
"costUSD": 30.34,
"sessions": 7
},
"cli": {
"tokens": 6683058,
"costUSD": 390.03,
"sessions": 8
},
"dotfiles": {
"tokens": 1266121,
"costUSD": 77.7,
"sessions": 2
},
"authkit-nextjs": {
"tokens": 95394,
"costUSD": 2.33,
"sessions": 1
},
"case": {
"tokens": 2895695,
"costUSD": 17.54,
"sessions": 2
},
"workos": {
"tokens": 1827444,
"costUSD": 22.24,
"sessions": 1
}
}
},
{
"date": "2026-03-17",
"tokens": 8078705,
"costUSD": 161.77,
"sessions": 12,
"messages": 868,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
2,
92,
143,
112,
7,
69,
62,
12,
38,
331,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 4606459,
"costUSD": 161.77,
"sessions": 9,
"messages": 819
},
"codex": {
"tokens": 3472246,
"costUSD": 0,
"sessions": 3,
"messages": 49
}
},
"byProvider": {
"anthropic": {
"tokens": 4606459,
"costUSD": 161.77
},
"openai": {
"tokens": 3472246,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 4268012,
"costUSD": 160.76,
"sessions": 9,
"messages": 656
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 102702,
"costUSD": 1,
"sessions": 1,
"messages": 85
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 3,
"messages": 3
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 235745,
"costUSD": 0,
"sessions": 1,
"messages": 75
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 3472246,
"costUSD": 0,
"sessions": 3,
"messages": 49
}
],
"byProject": {
"claude-plugins": {
"tokens": 135227,
"costUSD": 3.69,
"sessions": 1
},
"vibekit-cli-proto": {
"tokens": 1538085,
"costUSD": 44.52,
"sessions": 2
},
"cli": {
"tokens": 729335,
"costUSD": 24.59,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 1545040,
"costUSD": 24.38,
"sessions": 4
},
"case": {
"tokens": 3471357,
"costUSD": 41.66,
"sessions": 2
},
"skills": {
"tokens": 154566,
"costUSD": 5.05,
"sessions": 1
},
"workos": {
"tokens": 505095,
"costUSD": 17.87,
"sessions": 1
}
}
},
{
"date": "2026-03-18",
"tokens": 19332932,
"costUSD": 786.25,
"sessions": 23,
"messages": 3516,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
653,
138,
358,
621,
85,
322,
592,
65,
0,
0,
12,
243,
406,
21,
0
],
"byTool": {
"claude-code": {
"tokens": 18151331,
"costUSD": 786.25,
"sessions": 22,
"messages": 3495
},
"codex": {
"tokens": 1181601,
"costUSD": 0,
"sessions": 1,
"messages": 21
}
},
"byProvider": {
"anthropic": {
"tokens": 18151331,
"costUSD": 786.25
},
"openai": {
"tokens": 1181601,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 14624330,
"costUSD": 781.41,
"sessions": 17,
"messages": 2940
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 747203,
"costUSD": 4.84,
"sessions": 8,
"messages": 191
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 4,
"messages": 15
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2779798,
"costUSD": 0,
"sessions": 4,
"messages": 349
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.3-codex",
"tokens": 1181601,
"costUSD": 0,
"sessions": 1,
"messages": 21
}
],
"byProject": {
"claude-plugins": {
"tokens": 420217,
"costUSD": 10.67,
"sessions": 3
},
"claude-plugins-internal": {
"tokens": 1002743,
"costUSD": 9.49,
"sessions": 1
},
"vibekit-cli-proto": {
"tokens": 139061,
"costUSD": 8.17,
"sessions": 1
},
"workos-node": {
"tokens": 1493106,
"costUSD": 30.3,
"sessions": 8
},
"dotfiles": {
"tokens": 155333,
"costUSD": 4.05,
"sessions": 2
},
"authkit-nextjs": {
"tokens": 8282764,
"costUSD": 268.07,
"sessions": 3
},
"case": {
"tokens": 7578403,
"costUSD": 450.12,
"sessions": 4
},
"workos": {
"tokens": 261305,
"costUSD": 5.4,
"sessions": 1
}
}
},
{
"date": "2026-03-19",
"tokens": 4780508,
"costUSD": 49.32,
"sessions": 13,
"messages": 719,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
276,
11,
0,
0,
0,
0,
0,
0,
0,
10,
196,
226,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 3311115,
"costUSD": 49.32,
"sessions": 9,
"messages": 645
},
"codex": {
"tokens": 1469393,
"costUSD": 0,
"sessions": 4,
"messages": 74
}
},
"byProvider": {
"anthropic": {
"tokens": 3311115,
"costUSD": 49.32
},
"openai": {
"tokens": 1469393,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 1391638,
"costUSD": 49.32,
"sessions": 9,
"messages": 366
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1919477,
"costUSD": 0,
"sessions": 3,
"messages": 278
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 1469393,
"costUSD": 0,
"sessions": 4,
"messages": 74
}
],
"byProject": {
"dotfiles": {
"tokens": 428078,
"costUSD": 7.86,
"sessions": 4
},
"authkit-nextjs": {
"tokens": 2742456,
"costUSD": 30,
"sessions": 8
},
"case": {
"tokens": 1609974,
"costUSD": 11.46,
"sessions": 1
}
}
},
{
"date": "2026-03-20",
"tokens": 225658,
"costUSD": 6.65,
"sessions": 2,
"messages": 41,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
14,
11,
0,
0,
0,
0,
16,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 225658,
"costUSD": 6.65,
"sessions": 2,
"messages": 41
}
},
"byProvider": {
"anthropic": {
"tokens": 225658,
"costUSD": 6.65
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 225658,
"costUSD": 6.65,
"sessions": 2,
"messages": 41
}
],
"byProject": {
"cli": {
"tokens": 225658,
"costUSD": 6.65,
"sessions": 2
}
}
},
{
"date": "2026-03-21",
"tokens": 1372162,
"costUSD": 8.71,
"sessions": 1,
"messages": 214,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
214,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1372162,
"costUSD": 8.71,
"sessions": 1,
"messages": 214
}
},
"byProvider": {
"anthropic": {
"tokens": 1372162,
"costUSD": 8.71
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 212475,
"costUSD": 7.91,
"sessions": 1,
"messages": 52
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 107931,
"costUSD": 0.8,
"sessions": 1,
"messages": 51
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1051756,
"costUSD": 0,
"sessions": 1,
"messages": 111
}
],
"byProject": {
"cli": {
"tokens": 1372162,
"costUSD": 8.71,
"sessions": 1
}
}
},
{
"date": "2026-03-22",
"tokens": 1520646,
"costUSD": 79.88,
"sessions": 4,
"messages": 401,
"hourCounts": [
0,
0,
0,
0,
0,
0,
97,
297,
7,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1520646,
"costUSD": 79.88,
"sessions": 4,
"messages": 401
}
},
"byProvider": {
"anthropic": {
"tokens": 1520646,
"costUSD": 79.88
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 949973,
"costUSD": 79.88,
"sessions": 4,
"messages": 340
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 570673,
"costUSD": 0,
"sessions": 1,
"messages": 61
}
],
"byProject": {
"mpp-demo": {
"tokens": 385414,
"costUSD": 12.47,
"sessions": 3
},
"cli": {
"tokens": 1135232,
"costUSD": 67.4,
"sessions": 1
}
}
},
{
"date": "2026-03-23",
"tokens": 9160404,
"costUSD": 370.26,
"sessions": 9,
"messages": 1494,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
63,
363,
511,
241,
242,
0,
55,
0,
19,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 9160404,
"costUSD": 370.26,
"sessions": 9,
"messages": 1494
}
},
"byProvider": {
"anthropic": {
"tokens": 9160404,
"costUSD": 370.26
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 7752378,
"costUSD": 370.12,
"sessions": 8,
"messages": 1331
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 36565,
"costUSD": 0.14,
"sessions": 2,
"messages": 2
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1371461,
"costUSD": 0,
"sessions": 2,
"messages": 161
}
],
"byProject": {
"emulate": {
"tokens": 4025018,
"costUSD": 213.57,
"sessions": 1
},
"cli": {
"tokens": 2677823,
"costUSD": 103.12,
"sessions": 3
},
"dotfiles": {
"tokens": 740548,
"costUSD": 24.97,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 167766,
"costUSD": 6.3,
"sessions": 2
},
"skills": {
"tokens": 177885,
"costUSD": 4.45,
"sessions": 1
},
"workos": {
"tokens": 1371364,
"costUSD": 17.85,
"sessions": 1
}
}
},
{
"date": "2026-03-24",
"tokens": 14768142,
"costUSD": 344.17,
"sessions": 19,
"messages": 2605,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
21,
179,
14,
138,
325,
54,
211,
86,
344,
808,
421,
0,
0,
1,
3,
0
],
"byTool": {
"claude-code": {
"tokens": 12364665,
"costUSD": 344.17,
"sessions": 15,
"messages": 2539
},
"codex": {
"tokens": 2403477,
"costUSD": 0,
"sessions": 4,
"messages": 66
}
},
"byProvider": {
"anthropic": {
"tokens": 12364665,
"costUSD": 344.17
},
"openai": {
"tokens": 2403477,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 8005634,
"costUSD": 344.17,
"sessions": 15,
"messages": 1973
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 4359031,
"costUSD": 0,
"sessions": 6,
"messages": 566
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 2403477,
"costUSD": 0,
"sessions": 4,
"messages": 66
}
],
"byProject": {
"mpp-service": {
"tokens": 111782,
"costUSD": 7.1,
"sessions": 1
},
"authkit-js": {
"tokens": 1408736,
"costUSD": 20.94,
"sessions": 4
},
"authkit-react": {
"tokens": 1049294,
"costUSD": 22.29,
"sessions": 1
},
"emulate": {
"tokens": 4980186,
"costUSD": 96.93,
"sessions": 3
},
"workos-node": {
"tokens": 1874509,
"costUSD": 26.35,
"sessions": 3
},
"cli": {
"tokens": 2842811,
"costUSD": 141.82,
"sessions": 2
},
"authkit-nextjs": {
"tokens": 2500824,
"costUSD": 28.73,
"sessions": 5
}
}
},
{
"date": "2026-03-25",
"tokens": 36840189,
"costUSD": 1158.99,
"sessions": 37,
"messages": 5318,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
240,
327,
665,
440,
935,
570,
332,
501,
2,
0,
558,
78,
0,
171,
499
],
"byTool": {
"claude-code": {
"tokens": 31557376,
"costUSD": 1158.99,
"sessions": 33,
"messages": 5212
},
"codex": {
"tokens": 5282813,
"costUSD": 0,
"sessions": 4,
"messages": 106
}
},
"byProvider": {
"anthropic": {
"tokens": 31557376,
"costUSD": 1158.99
},
"openai": {
"tokens": 5282813,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 24398157,
"costUSD": 1158.58,
"sessions": 32,
"messages": 3857
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 62057,
"costUSD": 0.41,
"sessions": 1,
"messages": 24
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 7097162,
"costUSD": 0,
"sessions": 10,
"messages": 1327
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 3,
"messages": 4
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 5282813,
"costUSD": 0,
"sessions": 4,
"messages": 106
}
],
"byProject": {
"claude-plugins": {
"tokens": 942846,
"costUSD": 11.42,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 7676095,
"costUSD": 274.04,
"sessions": 7
},
"cli": {
"tokens": 27094156,
"costUSD": 852.39,
"sessions": 22
},
"dotfiles": {
"tokens": 684695,
"costUSD": 17.23,
"sessions": 6
},
"case": {
"tokens": 442397,
"costUSD": 3.9,
"sessions": 2
}
}
},
{
"date": "2026-03-26",
"tokens": 4361414,
"costUSD": 155.45,
"sessions": 6,
"messages": 923,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
69,
577,
222,
37,
18,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 4361414,
"costUSD": 155.45,
"sessions": 6,
"messages": 923
}
},
"byProvider": {
"anthropic": {
"tokens": 4361414,
"costUSD": 155.45
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 3470133,
"costUSD": 155.45,
"sessions": 6,
"messages": 696
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 891281,
"costUSD": 0,
"sessions": 1,
"messages": 227
}
],
"byProject": {
"cli": {
"tokens": 4004061,
"costUSD": 129.45,
"sessions": 6
},
"workos-spec": {
"tokens": 357353,
"costUSD": 26,
"sessions": 1
}
}
},
{
"date": "2026-03-27",
"tokens": 2816457,
"costUSD": 116.45,
"sessions": 5,
"messages": 347,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
26,
0,
0,
0,
156,
21,
106,
38,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 2816457,
"costUSD": 116.45,
"sessions": 5,
"messages": 347
}
},
"byProvider": {
"anthropic": {
"tokens": 2816457,
"costUSD": 116.45
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 2434096,
"costUSD": 116.45,
"sessions": 5,
"messages": 328
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 382361,
"costUSD": 0,
"sessions": 1,
"messages": 19
}
],
"byProject": {
"claude-plugins": {
"tokens": 298462,
"costUSD": 5.68,
"sessions": 1
},
"cli": {
"tokens": 2474744,
"costUSD": 109.95,
"sessions": 3
},
"dotfiles": {
"tokens": 43251,
"costUSD": 0.81,
"sessions": 1
}
}
},
{
"date": "2026-03-28",
"tokens": 14829302,
"costUSD": 789.22,
"sessions": 14,
"messages": 4065,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
618,
995,
420,
460,
0,
0,
0,
0,
120,
259,
379,
135,
679,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 14829302,
"costUSD": 789.22,
"sessions": 14,
"messages": 4065
}
},
"byProvider": {
"anthropic": {
"tokens": 14829302,
"costUSD": 789.22
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 12525055,
"costUSD": 789.22,
"sessions": 14,
"messages": 3659
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2304247,
"costUSD": 0,
"sessions": 4,
"messages": 405
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"claude-plugins": {
"tokens": 1190764,
"costUSD": 54.63,
"sessions": 1
},
"dotfiles": {
"tokens": 4278943,
"costUSD": 172.09,
"sessions": 1
},
"case": {
"tokens": 9359595,
"costUSD": 562.5,
"sessions": 12
}
}
},
{
"date": "2026-03-29",
"tokens": 4290136,
"costUSD": 177.79,
"sessions": 4,
"messages": 1013,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
97,
154,
363,
0,
0,
0,
0,
41,
325,
33,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 4290136,
"costUSD": 177.79,
"sessions": 4,
"messages": 1013
}
},
"byProvider": {
"anthropic": {
"tokens": 4290136,
"costUSD": 177.79
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 2999094,
"costUSD": 177.69,
"sessions": 3,
"messages": 777
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 26458,
"costUSD": 0.1,
"sessions": 1,
"messages": 1
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1264584,
"costUSD": 0,
"sessions": 3,
"messages": 234
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"dotfiles": {
"tokens": 3386963,
"costUSD": 131.79,
"sessions": 3
},
"case": {
"tokens": 903173,
"costUSD": 46,
"sessions": 1
}
}
},
{
"date": "2026-03-30",
"tokens": 4849596,
"costUSD": 141.98,
"sessions": 6,
"messages": 1218,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
60,
336,
421,
241,
0,
10,
150,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 4849596,
"costUSD": 141.98,
"sessions": 6,
"messages": 1218
}
},
"byProvider": {
"anthropic": {
"tokens": 4849596,
"costUSD": 141.98
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 2041694,
"costUSD": 141.54,
"sessions": 6,
"messages": 596
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 74288,
"costUSD": 0.43,
"sessions": 2,
"messages": 27
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2733614,
"costUSD": 0,
"sessions": 4,
"messages": 595
}
],
"byProject": {
"cli": {
"tokens": 1828022,
"costUSD": 38.98,
"sessions": 2
},
"skills": {
"tokens": 1125713,
"costUSD": 39.19,
"sessions": 1
},
"dotfiles": {
"tokens": 1895861,
"costUSD": 63.8,
"sessions": 4
}
}
},
{
"date": "2026-03-31",
"tokens": 5576676,
"costUSD": 79.72,
"sessions": 11,
"messages": 1104,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
34,
0,
0,
539,
0,
15,
109,
201,
98,
0,
0,
0,
0,
0,
0,
108
],
"byTool": {
"claude-code": {
"tokens": 5576676,
"costUSD": 79.72,
"sessions": 11,
"messages": 1104
}
},
"byProvider": {
"anthropic": {
"tokens": 5576676,
"costUSD": 79.72
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 2005705,
"costUSD": 79.72,
"sessions": 11,
"messages": 462
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 3570971,
"costUSD": 0,
"sessions": 6,
"messages": 639
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 2,
"messages": 3
}
],
"byProject": {
"cc-source": {
"tokens": 1844072,
"costUSD": 9.19,
"sessions": 2
},
"claude-plugins": {
"tokens": 37465,
"costUSD": 1.83,
"sessions": 1
},
"cli": {
"tokens": 3521217,
"costUSD": 63.74,
"sessions": 7
},
"dotfiles": {
"tokens": 173922,
"costUSD": 4.96,
"sessions": 1
}
}
},
{
"date": "2026-04-01",
"tokens": 2626832,
"costUSD": 70.16,
"sessions": 7,
"messages": 760,
"hourCounts": [
0,
0,
0,
0,
0,
0,
29,
0,
0,
321,
229,
144,
0,
35,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 2626832,
"costUSD": 70.16,
"sessions": 7,
"messages": 760
}
},
"byProvider": {
"anthropic": {
"tokens": 2626832,
"costUSD": 70.16
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 1694299,
"costUSD": 70.16,
"sessions": 7,
"messages": 451
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 932533,
"costUSD": 0,
"sessions": 4,
"messages": 309
}
],
"byProject": {
"authkit-react": {
"tokens": 731833,
"costUSD": 11.47,
"sessions": 1
},
"cli": {
"tokens": 563441,
"costUSD": 14.33,
"sessions": 2
},
"dotfiles": {
"tokens": 682101,
"costUSD": 17.74,
"sessions": 2
},
"authkit-nextjs": {
"tokens": 337496,
"costUSD": 18.25,
"sessions": 1
},
"authkit-tanstack-start": {
"tokens": 311961,
"costUSD": 8.36,
"sessions": 1
}
}
},
{
"date": "2026-04-02",
"tokens": 5297394,
"costUSD": 253.91,
"sessions": 7,
"messages": 1388,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
229,
164,
18,
85,
48,
50,
333,
221,
132,
108,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 5297394,
"costUSD": 253.91,
"sessions": 7,
"messages": 1388
}
},
"byProvider": {
"anthropic": {
"tokens": 5297394,
"costUSD": 253.91
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 3780938,
"costUSD": 253.36,
"sessions": 7,
"messages": 1109
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 119480,
"costUSD": 0.56,
"sessions": 2,
"messages": 19
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1396976,
"costUSD": 0,
"sessions": 3,
"messages": 259
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"aie-europe": {
"tokens": 3257062,
"costUSD": 129.16,
"sessions": 3
},
"workos-custom-ui-authkit-example": {
"tokens": 430365,
"costUSD": 69.29,
"sessions": 1
},
"cli": {
"tokens": 807697,
"costUSD": 46.14,
"sessions": 1
},
"dotfiles": {
"tokens": 802270,
"costUSD": 9.32,
"sessions": 2
}
}
},
{
"date": "2026-04-03",
"tokens": 1874738,
"costUSD": 43.76,
"sessions": 6,
"messages": 376,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
12,
159,
76,
10,
93,
0,
0,
14,
12,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1874738,
"costUSD": 43.76,
"sessions": 6,
"messages": 376
}
},
"byProvider": {
"anthropic": {
"tokens": 1874738,
"costUSD": 43.76
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 1156680,
"costUSD": 43.76,
"sessions": 6,
"messages": 240
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 718058,
"costUSD": 0,
"sessions": 1,
"messages": 135
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"cli": {
"tokens": 951762,
"costUSD": 7.47,
"sessions": 2
},
"skills": {
"tokens": 4488,
"costUSD": 0.8,
"sessions": 1
},
"dotfiles": {
"tokens": 263070,
"costUSD": 6.72,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 213562,
"costUSD": 6.68,
"sessions": 1
},
"authkit-tanstack-start": {
"tokens": 441856,
"costUSD": 22.09,
"sessions": 2
}
}
},
{
"date": "2026-04-04",
"tokens": 7295108,
"costUSD": 334.38,
"sessions": 8,
"messages": 1423,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
348,
0,
199,
107,
0,
0,
0,
140,
622,
0,
0,
0,
0,
0,
0,
7,
0
],
"byTool": {
"claude-code": {
"tokens": 6870909,
"costUSD": 334.38,
"sessions": 7,
"messages": 1413
},
"codex": {
"tokens": 424199,
"costUSD": 0,
"sessions": 1,
"messages": 10
}
},
"byProvider": {
"anthropic": {
"tokens": 6870909,
"costUSD": 334.38
},
"openai": {
"tokens": 424199,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 5346798,
"costUSD": 334.38,
"sessions": 7,
"messages": 1163
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1524111,
"costUSD": 0,
"sessions": 5,
"messages": 250
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 424199,
"costUSD": 0,
"sessions": 1,
"messages": 10
}
],
"byProject": {
"claude-plugins": {
"tokens": 5934,
"costUSD": 1.56,
"sessions": 1
},
"aie-europe": {
"tokens": 5154697,
"costUSD": 274.8,
"sessions": 4
},
"cli": {
"tokens": 198462,
"costUSD": 23.04,
"sessions": 1
},
"workos-node": {
"tokens": 1936015,
"costUSD": 34.98,
"sessions": 3
}
}
},
{
"date": "2026-04-06",
"tokens": 5498613,
"costUSD": 115.45,
"sessions": 4,
"messages": 672,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
4,
384,
83,
0,
0,
0,
15,
184,
2,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 4957060,
"costUSD": 115.45,
"sessions": 3,
"messages": 659
},
"codex": {
"tokens": 541553,
"costUSD": 0,
"sessions": 1,
"messages": 13
}
},
"byProvider": {
"anthropic": {
"tokens": 4957060,
"costUSD": 115.45
},
"openai": {
"tokens": 541553,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 3022774,
"costUSD": 114.92,
"sessions": 3,
"messages": 510
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 89845,
"costUSD": 0.53,
"sessions": 1,
"messages": 24
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1844441,
"costUSD": 0,
"sessions": 3,
"messages": 124
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 541553,
"costUSD": 0,
"sessions": 1,
"messages": 13
}
],
"byProject": {
"aie-europe": {
"tokens": 1591538,
"costUSD": 44.77,
"sessions": 1
},
"dotfiles": {
"tokens": 2286588,
"costUSD": 48.81,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 1620487,
"costUSD": 21.86,
"sessions": 2
}
}
},
{
"date": "2026-04-07",
"tokens": 4385840,
"costUSD": 273.86,
"sessions": 6,
"messages": 1324,
"hourCounts": [
51,
8,
0,
0,
0,
0,
0,
1,
261,
62,
82,
58,
299,
294,
0,
0,
0,
0,
0,
0,
0,
0,
0,
208
],
"byTool": {
"claude-code": {
"tokens": 4368570,
"costUSD": 273.86,
"sessions": 5,
"messages": 1323
},
"codex": {
"tokens": 17270,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
},
"byProvider": {
"anthropic": {
"tokens": 4368570,
"costUSD": 273.86
},
"openai": {
"tokens": 17270,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 3243736,
"costUSD": 273.86,
"sessions": 5,
"messages": 1215
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1124834,
"costUSD": 0,
"sessions": 2,
"messages": 108
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 17270,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"claude-plugins": {
"tokens": 386751,
"costUSD": 13.93,
"sessions": 2
},
"aie-europe": {
"tokens": 3974731,
"costUSD": 258.93,
"sessions": 3
},
"dotfiles": {
"tokens": 24358,
"costUSD": 1,
"sessions": 2
}
}
},
{
"date": "2026-04-08",
"tokens": 6993385,
"costUSD": 274.44,
"sessions": 12,
"messages": 1405,
"hourCounts": [
669,
131,
119,
158,
0,
126,
0,
0,
6,
148,
0,
0,
0,
48,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 6260510,
"costUSD": 274.44,
"sessions": 11,
"messages": 1388
},
"codex": {
"tokens": 732875,
"costUSD": 0,
"sessions": 1,
"messages": 17
}
},
"byProvider": {
"anthropic": {
"tokens": 6260510,
"costUSD": 274.44
},
"openai": {
"tokens": 732875,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 4010256,
"costUSD": 274.44,
"sessions": 11,
"messages": 1246
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 2250254,
"costUSD": 0,
"sessions": 5,
"messages": 142
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 732875,
"costUSD": 0,
"sessions": 1,
"messages": 17
}
],
"byProject": {
"claude-plugins": {
"tokens": 19584,
"costUSD": 2.77,
"sessions": 1
},
"aie-europe": {
"tokens": 3289418,
"costUSD": 206.53,
"sessions": 8
},
"dotfiles": {
"tokens": 83312,
"costUSD": 10.88,
"sessions": 2
},
"cli": {
"tokens": 936022,
"costUSD": 15.75,
"sessions": 2
},
"authkit-nextjs": {
"tokens": 2665049,
"costUSD": 38.52,
"sessions": 2
}
}
},
{
"date": "2026-04-09",
"tokens": 6307994,
"costUSD": 156.16,
"sessions": 5,
"messages": 928,
"hourCounts": [
0,
0,
0,
45,
0,
575,
204,
0,
34,
0,
70,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 6035158,
"costUSD": 156.16,
"sessions": 4,
"messages": 919
},
"codex": {
"tokens": 272836,
"costUSD": 0,
"sessions": 1,
"messages": 9
}
},
"byProvider": {
"anthropic": {
"tokens": 6035158,
"costUSD": 156.16
},
"openai": {
"tokens": 272836,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 4031355,
"costUSD": 156.12,
"sessions": 4,
"messages": 497
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 11594,
"costUSD": 0.04,
"sessions": 1,
"messages": 1
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 1992209,
"costUSD": 0,
"sessions": 2,
"messages": 421
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 272836,
"costUSD": 0,
"sessions": 1,
"messages": 9
}
],
"byProject": {
"talks": {
"tokens": 4947259,
"costUSD": 126.55,
"sessions": 2
},
"authkit-nextjs": {
"tokens": 459909,
"costUSD": 18.69,
"sessions": 1
},
"authkit-tanstack-start": {
"tokens": 900826,
"costUSD": 10.92,
"sessions": 2
}
}
},
{
"date": "2026-04-10",
"tokens": 2849781,
"costUSD": 192.09,
"sessions": 6,
"messages": 858,
"hourCounts": [
0,
67,
419,
166,
22,
0,
41,
0,
143,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 2824784,
"costUSD": 192.09,
"sessions": 5,
"messages": 857
},
"codex": {
"tokens": 24997,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
},
"byProvider": {
"anthropic": {
"tokens": 2824784,
"costUSD": 192.09
},
"openai": {
"tokens": 24997,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 1813251,
"costUSD": 190.56,
"sessions": 5,
"messages": 639
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 281830,
"costUSD": 1.54,
"sessions": 1,
"messages": 53
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 729703,
"costUSD": 0,
"sessions": 2,
"messages": 165
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 24997,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"talks": {
"tokens": 2298806,
"costUSD": 176.38,
"sessions": 5
},
"case": {
"tokens": 147001,
"costUSD": 6.73,
"sessions": 1
},
"dotfiles": {
"tokens": 403974,
"costUSD": 8.98,
"sessions": 1
}
}
},
{
"date": "2026-04-11",
"tokens": 439629,
"costUSD": 8.65,
"sessions": 1,
"messages": 67,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
67,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 439629,
"costUSD": 8.65,
"sessions": 1,
"messages": 67
}
},
"byProvider": {
"anthropic": {
"tokens": 439629,
"costUSD": 8.65
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 241226,
"costUSD": 8.65,
"sessions": 1,
"messages": 34
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-haiku-4-5-20251001",
"tokens": 198403,
"costUSD": 0,
"sessions": 1,
"messages": 33
}
],
"byProject": {
"talks": {
"tokens": 427386,
"costUSD": 6.96,
"sessions": 1
},
"dotfiles": {
"tokens": 12243,
"costUSD": 1.69,
"sessions": 1
}
}
},
{
"date": "2026-04-12",
"tokens": 521519,
"costUSD": 45.32,
"sessions": 1,
"messages": 179,
"hourCounts": [
0,
99,
79,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 521519,
"costUSD": 45.32,
"sessions": 1,
"messages": 179
}
},
"byProvider": {
"anthropic": {
"tokens": 521519,
"costUSD": 45.32
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 521519,
"costUSD": 45.32,
"sessions": 1,
"messages": 179
}
],
"byProject": {
"dotfiles": {
"tokens": 246730,
"costUSD": 16.5,
"sessions": 1
},
"aie-europe": {
"tokens": 31475,
"costUSD": 6.43,
"sessions": 1
},
"talks": {
"tokens": 41157,
"costUSD": 9.33,
"sessions": 1
},
"nicknisi.com": {
"tokens": 202157,
"costUSD": 13.05,
"sessions": 1
}
}
},
{
"date": "2026-04-13",
"tokens": 5037974,
"costUSD": 135.74,
"sessions": 7,
"messages": 675,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
65,
63,
63,
26,
163,
86,
69,
52,
88,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 3711059,
"costUSD": 135.74,
"sessions": 6,
"messages": 655
},
"codex": {
"tokens": 1326915,
"costUSD": 0,
"sessions": 1,
"messages": 20
}
},
"byProvider": {
"anthropic": {
"tokens": 3711059,
"costUSD": 135.74
},
"openai": {
"tokens": 1326915,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 3063062,
"costUSD": 130.41,
"sessions": 6,
"messages": 433
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-sonnet-4-6",
"tokens": 647997,
"costUSD": 5.33,
"sessions": 2,
"messages": 221
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 1326915,
"costUSD": 0,
"sessions": 1,
"messages": 20
}
],
"byProject": {
"claude-plugins": {
"tokens": 121114,
"costUSD": 4.5,
"sessions": 1
},
"workos-bulk-user-import-tool-multi-org": {
"tokens": 791098,
"costUSD": 34.57,
"sessions": 1
},
"nicknisi.com": {
"tokens": 321176,
"costUSD": 12.25,
"sessions": 1
},
"workos-node": {
"tokens": 3095492,
"costUSD": 47.26,
"sessions": 2
},
"dotfiles": {
"tokens": 114260,
"costUSD": 3.73,
"sessions": 1
},
"skills": {
"tokens": 594834,
"costUSD": 33.44,
"sessions": 1
}
}
},
{
"date": "2026-04-14",
"tokens": 17131855,
"costUSD": 607.61,
"sessions": 21,
"messages": 2728,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
5,
447,
140,
168,
239,
225,
714,
375,
48,
35,
193,
139,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 10598261,
"costUSD": 607.61,
"sessions": 15,
"messages": 2642
},
"codex": {
"tokens": 6533594,
"costUSD": 0,
"sessions": 6,
"messages": 86
}
},
"byProvider": {
"anthropic": {
"tokens": 10598261,
"costUSD": 607.61
},
"openai": {
"tokens": 6533594,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 10598261,
"costUSD": 607.61,
"sessions": 15,
"messages": 2640
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 2,
"messages": 2
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 6533594,
"costUSD": 0,
"sessions": 6,
"messages": 86
}
],
"byProject": {
"cli": {
"tokens": 9863015,
"costUSD": 402.34,
"sessions": 9
},
"workos": {
"tokens": 4154428,
"costUSD": 108.81,
"sessions": 4
},
"emulate": {
"tokens": 84871,
"costUSD": 12.32,
"sessions": 1
},
"dotfiles": {
"tokens": 597127,
"costUSD": 24.45,
"sessions": 3
},
"claude-plugins": {
"tokens": 8504,
"costUSD": 1.59,
"sessions": 1
},
"skills": {
"tokens": 2423910,
"costUSD": 58.11,
"sessions": 6
}
}
},
{
"date": "2026-04-15",
"tokens": 19747735,
"costUSD": 761.99,
"sessions": 20,
"messages": 2354,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
377,
19,
276,
0,
184,
51,
525,
467,
455,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 15453781,
"costUSD": 761.99,
"sessions": 15,
"messages": 2266
},
"codex": {
"tokens": 4293954,
"costUSD": 0,
"sessions": 5,
"messages": 88
}
},
"byProvider": {
"anthropic": {
"tokens": 15453781,
"costUSD": 761.99
},
"openai": {
"tokens": 4293954,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 15453781,
"costUSD": 761.99,
"sessions": 15,
"messages": 2265
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 4293954,
"costUSD": 0,
"sessions": 5,
"messages": 88
}
],
"byProject": {
"claude-plugins": {
"tokens": 2199103,
"costUSD": 79.23,
"sessions": 5
},
"cli": {
"tokens": 10890914,
"costUSD": 452.65,
"sessions": 9
},
"workos": {
"tokens": 4533098,
"costUSD": 211.96,
"sessions": 3
},
"skills": {
"tokens": 1473737,
"costUSD": 6.6,
"sessions": 2
},
"authkit-tanstack-start": {
"tokens": 344531,
"costUSD": 11.55,
"sessions": 1
},
"dotfiles": {
"tokens": 306352,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-04-16",
"tokens": 18113527,
"costUSD": 462.52,
"sessions": 16,
"messages": 1467,
"hourCounts": [
0,
0,
0,
0,
214,
310,
0,
0,
29,
10,
117,
75,
33,
140,
275,
120,
144,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 11017555,
"costUSD": 462.52,
"sessions": 10,
"messages": 1357
},
"codex": {
"tokens": 7095972,
"costUSD": 0,
"sessions": 6,
"messages": 110
}
},
"byProvider": {
"anthropic": {
"tokens": 11017555,
"costUSD": 462.52
},
"openai": {
"tokens": 7095972,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 7440473,
"costUSD": 315.57,
"sessions": 6,
"messages": 828
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 3577082,
"costUSD": 146.94,
"sessions": 4,
"messages": 528
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 7095972,
"costUSD": 0,
"sessions": 6,
"messages": 110
}
],
"byProject": {
"authkit-session": {
"tokens": 6412756,
"costUSD": 147.06,
"sessions": 5
},
"authkit-sveltekit": {
"tokens": 1086082,
"costUSD": 102.65,
"sessions": 1
},
"cli": {
"tokens": 1287684,
"costUSD": 48.35,
"sessions": 1
},
"workos": {
"tokens": 8179062,
"costUSD": 164.45,
"sessions": 8
},
"skills": {
"tokens": 1147943,
"costUSD": 0,
"sessions": 1
}
}
},
{
"date": "2026-04-17",
"tokens": 28359825,
"costUSD": 824.19,
"sessions": 20,
"messages": 2379,
"hourCounts": [
0,
0,
0,
0,
0,
249,
26,
0,
198,
900,
206,
53,
52,
306,
0,
6,
138,
118,
127,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 16755970,
"costUSD": 824.19,
"sessions": 11,
"messages": 2206
},
"codex": {
"tokens": 11603855,
"costUSD": 0,
"sessions": 9,
"messages": 173
}
},
"byProvider": {
"anthropic": {
"tokens": 16755970,
"costUSD": 824.19
},
"openai": {
"tokens": 11603855,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 16755970,
"costUSD": 824.19,
"sessions": 11,
"messages": 2205
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 11603855,
"costUSD": 0,
"sessions": 9,
"messages": 173
}
],
"byProject": {
"authkit-session": {
"tokens": 15561643,
"costUSD": 341.72,
"sessions": 8
},
"authkit-tanstack-start": {
"tokens": 4248762,
"costUSD": 207.73,
"sessions": 2
},
"authkit-sveltekit": {
"tokens": 2096863,
"costUSD": 73.13,
"sessions": 5
},
"authkit-remix": {
"tokens": 49512,
"costUSD": 1.36,
"sessions": 1
},
"authkit-react-router": {
"tokens": 6403045,
"costUSD": 200.25,
"sessions": 6
}
}
},
{
"date": "2026-04-18",
"tokens": 9204853,
"costUSD": 278.46,
"sessions": 8,
"messages": 1031,
"hourCounts": [
0,
0,
0,
0,
0,
0,
70,
0,
0,
241,
643,
35,
0,
0,
0,
0,
0,
0,
31,
11,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 6093487,
"costUSD": 278.46,
"sessions": 6,
"messages": 991
},
"codex": {
"tokens": 3111366,
"costUSD": 0,
"sessions": 2,
"messages": 40
}
},
"byProvider": {
"anthropic": {
"tokens": 6093487,
"costUSD": 278.46
},
"openai": {
"tokens": 3111366,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 6093487,
"costUSD": 278.46,
"sessions": 6,
"messages": 989
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 2,
"messages": 2
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 3111366,
"costUSD": 0,
"sessions": 2,
"messages": 40
}
],
"byProject": {
"authkit-session": {
"tokens": 5738972,
"costUSD": 143.16,
"sessions": 6
},
"authkit-sveltekit": {
"tokens": 68161,
"costUSD": 7.73,
"sessions": 1
},
"authkit-tanstack-start": {
"tokens": 1239167,
"costUSD": 64.84,
"sessions": 1
},
"cli": {
"tokens": 1927919,
"costUSD": 53.2,
"sessions": 2
},
"emulate": {
"tokens": 230634,
"costUSD": 9.53,
"sessions": 1
}
}
},
{
"date": "2026-04-19",
"tokens": 7248093,
"costUSD": 194.34,
"sessions": 9,
"messages": 789,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
174,
150,
465,
0,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 3157308,
"costUSD": 194.34,
"sessions": 5,
"messages": 732
},
"codex": {
"tokens": 4090785,
"costUSD": 0,
"sessions": 4,
"messages": 57
}
},
"byProvider": {
"anthropic": {
"tokens": 3157308,
"costUSD": 194.34
},
"openai": {
"tokens": 4090785,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 3157308,
"costUSD": 194.34,
"sessions": 5,
"messages": 732
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 4090785,
"costUSD": 0,
"sessions": 4,
"messages": 57
}
],
"byProject": {
"authkit-sveltekit": {
"tokens": 579626,
"costUSD": 28.1,
"sessions": 1
},
"authkit-tanstack-start": {
"tokens": 25222,
"costUSD": 5.84,
"sessions": 1
},
"authkit-session": {
"tokens": 3510164,
"costUSD": 39.15,
"sessions": 2
},
"cli": {
"tokens": 924223,
"costUSD": 38.92,
"sessions": 4
},
"emulate": {
"tokens": 2208858,
"costUSD": 82.34,
"sessions": 4
}
}
},
{
"date": "2026-04-20",
"tokens": 33109563,
"costUSD": 905.43,
"sessions": 38,
"messages": 3032,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
38,
425,
291,
752,
136,
110,
308,
198,
280,
239,
176,
79,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 16919299,
"costUSD": 905.43,
"sessions": 17,
"messages": 2757
},
"codex": {
"tokens": 16190264,
"costUSD": 0,
"sessions": 21,
"messages": 275
}
},
"byProvider": {
"anthropic": {
"tokens": 16919299,
"costUSD": 905.43
},
"openai": {
"tokens": 16190264,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 16919299,
"costUSD": 905.43,
"sessions": 17,
"messages": 2756
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 16190264,
"costUSD": 0,
"sessions": 21,
"messages": 275
}
],
"byProject": {
"authkit-session": {
"tokens": 13405062,
"costUSD": 291.66,
"sessions": 23
},
"authkit-tanstack-start": {
"tokens": 3919627,
"costUSD": 95.37,
"sessions": 5
},
"authkit-sveltekit": {
"tokens": 4138547,
"costUSD": 168.57,
"sessions": 4
},
"skills": {
"tokens": 3027847,
"costUSD": 134.78,
"sessions": 1
},
"dotfiles": {
"tokens": 57456,
"costUSD": 8.13,
"sessions": 1
},
"emulate": {
"tokens": 5046952,
"costUSD": 82.32,
"sessions": 2
},
"cli": {
"tokens": 196249,
"costUSD": 14.56,
"sessions": 1
},
"authkit-nextjs": {
"tokens": 3317823,
"costUSD": 110.04,
"sessions": 7
}
}
},
{
"date": "2026-04-21",
"tokens": 13945795,
"costUSD": 387.69,
"sessions": 10,
"messages": 767,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
53,
65,
0,
50,
29,
78,
125,
114,
63,
107,
83,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 8625033,
"costUSD": 387.69,
"sessions": 6,
"messages": 685
},
"codex": {
"tokens": 5320762,
"costUSD": 0,
"sessions": 4,
"messages": 82
}
},
"byProvider": {
"anthropic": {
"tokens": 8625033,
"costUSD": 387.69
},
"openai": {
"tokens": 5320762,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 8625033,
"costUSD": 387.69,
"sessions": 6,
"messages": 685
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 5320762,
"costUSD": 0,
"sessions": 4,
"messages": 82
}
],
"byProject": {
"claude-plugins": {
"tokens": 797569,
"costUSD": 39.88,
"sessions": 2
},
"workos-bulk-user-import-tool-multi-org": {
"tokens": 877559,
"costUSD": 57.54,
"sessions": 1
},
"react-router-authkit-example": {
"tokens": 194612,
"costUSD": 9.39,
"sessions": 1
},
"authkit-react-router": {
"tokens": 3588517,
"costUSD": 6.46,
"sessions": 4
},
"cli": {
"tokens": 8287065,
"costUSD": 249.72,
"sessions": 3
},
"skills": {
"tokens": 200473,
"costUSD": 24.71,
"sessions": 1
}
}
},
{
"date": "2026-04-22",
"tokens": 28394434,
"costUSD": 955.27,
"sessions": 27,
"messages": 3189,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
22,
200,
61,
90,
94,
66,
0,
133,
153,
541,
536,
309,
523,
266,
0,
195
],
"byTool": {
"claude-code": {
"tokens": 15227917,
"costUSD": 955.27,
"sessions": 15,
"messages": 2975
},
"codex": {
"tokens": 13166517,
"costUSD": 0,
"sessions": 12,
"messages": 214
}
},
"byProvider": {
"anthropic": {
"tokens": 15227917,
"costUSD": 955.27
},
"openai": {
"tokens": 13166517,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 15227917,
"costUSD": 955.27,
"sessions": 15,
"messages": 2974
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 13166517,
"costUSD": 0,
"sessions": 12,
"messages": 214
}
],
"byProject": {
"claude-plugins": {
"tokens": 1001467,
"costUSD": 29.97,
"sessions": 3
},
"skills": {
"tokens": 260870,
"costUSD": 32.12,
"sessions": 1
},
"cli": {
"tokens": 12937416,
"costUSD": 578.21,
"sessions": 8
},
"aie-europe": {
"tokens": 326220,
"costUSD": 14.16,
"sessions": 2
},
"authkit-session": {
"tokens": 7416043,
"costUSD": 209.62,
"sessions": 10
},
"authkit-sveltekit": {
"tokens": 6104240,
"costUSD": 77.15,
"sessions": 3
},
"authkit-react-router": {
"tokens": 348178,
"costUSD": 14.04,
"sessions": 1
}
}
},
{
"date": "2026-04-23",
"tokens": 40867429,
"costUSD": 578.76,
"sessions": 29,
"messages": 1842,
"hourCounts": [
75,
0,
0,
0,
0,
0,
0,
0,
0,
92,
152,
184,
44,
339,
118,
0,
52,
45,
167,
0,
115,
99,
360,
0
],
"byTool": {
"claude-code": {
"tokens": 12719465,
"costUSD": 578.76,
"sessions": 20,
"messages": 1565
},
"codex": {
"tokens": 28147964,
"costUSD": 0,
"sessions": 9,
"messages": 277
}
},
"byProvider": {
"anthropic": {
"tokens": 12719465,
"costUSD": 578.76
},
"openai": {
"tokens": 28147964,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 12703293,
"costUSD": 578.76,
"sessions": 19,
"messages": 1557
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 2,
"messages": 2
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-5-20251101",
"tokens": 16172,
"costUSD": 0,
"sessions": 1,
"messages": 6
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.4",
"tokens": 9784767,
"costUSD": 0,
"sessions": 8,
"messages": 157
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.5",
"tokens": 18363197,
"costUSD": 0,
"sessions": 1,
"messages": 120
}
],
"byProject": {
"claude-plugins": {
"tokens": 1808414,
"costUSD": 89.85,
"sessions": 4
},
"dotfiles": {
"tokens": 675906,
"costUSD": 35.54,
"sessions": 5
},
"cli": {
"tokens": 23685582,
"costUSD": 109.85,
"sessions": 8
},
"authkit-session": {
"tokens": 4438453,
"costUSD": 147.15,
"sessions": 3
},
"authkit-sveltekit": {
"tokens": 2300149,
"costUSD": 49.45,
"sessions": 5
},
"authkit-tanstack-start": {
"tokens": 2041858,
"costUSD": 58.71,
"sessions": 3
},
"authkit-react-router": {
"tokens": 195087,
"costUSD": 4.59,
"sessions": 1
},
"skills": {
"tokens": 383331,
"costUSD": 46.2,
"sessions": 1
},
"workos-node": {
"tokens": 5338649,
"costUSD": 37.41,
"sessions": 4
}
}
},
{
"date": "2026-04-24",
"tokens": 25232806,
"costUSD": 182.46,
"sessions": 15,
"messages": 816,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
45,
29,
71,
130,
50,
0,
57,
185,
92,
137,
20,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 3060856,
"costUSD": 182.46,
"sessions": 6,
"messages": 559
},
"codex": {
"tokens": 22171950,
"costUSD": 0,
"sessions": 9,
"messages": 257
}
},
"byProvider": {
"anthropic": {
"tokens": 3060856,
"costUSD": 182.46
},
"openai": {
"tokens": 22171950,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 3060856,
"costUSD": 182.46,
"sessions": 6,
"messages": 559
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.5",
"tokens": 22171950,
"costUSD": 0,
"sessions": 9,
"messages": 257
}
],
"byProject": {
"authkit-session": {
"tokens": 627244,
"costUSD": 35.14,
"sessions": 2
},
"authkit-sveltekit": {
"tokens": 1768485,
"costUSD": 62.32,
"sessions": 3
},
"authkit-tanstack-start": {
"tokens": 5154371,
"costUSD": 72.43,
"sessions": 7
},
"skills": {
"tokens": 17603158,
"costUSD": 10.71,
"sessions": 3
},
"dotfiles": {
"tokens": 49826,
"costUSD": 1.03,
"sessions": 1
},
"nicknisi": {
"tokens": 29722,
"costUSD": 0.83,
"sessions": 1
}
}
},
{
"date": "2026-04-26",
"tokens": 27738044,
"costUSD": 602.03,
"sessions": 15,
"messages": 1438,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
134,
116,
37,
34,
186,
21,
243,
88,
129,
69,
8,
81,
178,
74,
40,
0
],
"byTool": {
"claude-code": {
"tokens": 8198731,
"costUSD": 602.03,
"sessions": 8,
"messages": 1192
},
"codex": {
"tokens": 19539313,
"costUSD": 0,
"sessions": 7,
"messages": 246
}
},
"byProvider": {
"anthropic": {
"tokens": 8198731,
"costUSD": 602.03
},
"openai": {
"tokens": 19539313,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 8198731,
"costUSD": 602.03,
"sessions": 8,
"messages": 1191
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.5",
"tokens": 19539313,
"costUSD": 0,
"sessions": 7,
"messages": 246
}
],
"byProject": {
"cli": {
"tokens": 17644715,
"costUSD": 544.85,
"sessions": 10
},
"posthog-wizard": {
"tokens": 85684,
"costUSD": 6.86,
"sessions": 1
},
"skills": {
"tokens": 10007645,
"costUSD": 50.32,
"sessions": 5
}
}
},
{
"date": "2026-04-27",
"tokens": 12969072,
"costUSD": 519.58,
"sessions": 9,
"messages": 1095,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
12,
164,
324,
107,
0,
167,
106,
91,
27,
0,
0,
41,
56,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 6175798,
"costUSD": 519.58,
"sessions": 5,
"messages": 996
},
"codex": {
"tokens": 6793274,
"costUSD": 0,
"sessions": 4,
"messages": 99
}
},
"byProvider": {
"anthropic": {
"tokens": 6175798,
"costUSD": 519.58
},
"openai": {
"tokens": 6793274,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 6175798,
"costUSD": 519.58,
"sessions": 5,
"messages": 995
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.5",
"tokens": 6793274,
"costUSD": 0,
"sessions": 4,
"messages": 99
}
],
"byProject": {
"workos": {
"tokens": 12752513,
"costUSD": 508.24,
"sessions": 8
},
"authkit-react-router": {
"tokens": 159692,
"costUSD": 6.1,
"sessions": 1
},
"dotfiles": {
"tokens": 56867,
"costUSD": 5.25,
"sessions": 1
}
}
},
{
"date": "2026-04-28",
"tokens": 34347897,
"costUSD": 732.8,
"sessions": 11,
"messages": 2069,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
6,
87,
28,
0,
9,
33,
27,
386,
552,
113,
0,
0,
0,
104,
516,
208
],
"byTool": {
"claude-code": {
"tokens": 16159132,
"costUSD": 732.8,
"sessions": 9,
"messages": 1933
},
"codex": {
"tokens": 18188765,
"costUSD": 0,
"sessions": 2,
"messages": 136
}
},
"byProvider": {
"anthropic": {
"tokens": 16159132,
"costUSD": 732.8
},
"openai": {
"tokens": 18188765,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 16159132,
"costUSD": 732.8,
"sessions": 9,
"messages": 1930
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 2,
"messages": 3
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.5",
"tokens": 18188765,
"costUSD": 0,
"sessions": 2,
"messages": 136
}
],
"byProject": {
"aie-europe": {
"tokens": 2025577,
"costUSD": 116.17,
"sessions": 2
},
"workos": {
"tokens": 21663541,
"costUSD": 174.62,
"sessions": 5
},
"cli": {
"tokens": 755689,
"costUSD": 36.42,
"sessions": 2
},
"nicknisi.com": {
"tokens": 8793872,
"costUSD": 322.81,
"sessions": 1
},
"dotfiles": {
"tokens": 1109218,
"costUSD": 82.79,
"sessions": 2
}
}
},
{
"date": "2026-04-29",
"tokens": 29536233,
"costUSD": 1020.55,
"sessions": 25,
"messages": 1916,
"hourCounts": [
161,
17,
0,
0,
0,
0,
0,
0,
0,
155,
196,
251,
221,
227,
472,
47,
3,
16,
27,
123,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 13708154,
"costUSD": 1020.55,
"sessions": 18,
"messages": 1777
},
"codex": {
"tokens": 15828079,
"costUSD": 0,
"sessions": 7,
"messages": 139
}
},
"byProvider": {
"anthropic": {
"tokens": 13708154,
"costUSD": 1020.55
},
"openai": {
"tokens": 15828079,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 12748213,
"costUSD": 989.18,
"sessions": 14,
"messages": 1655
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 959941,
"costUSD": 31.36,
"sessions": 5,
"messages": 117
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 5,
"messages": 5
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.5",
"tokens": 15828079,
"costUSD": 0,
"sessions": 7,
"messages": 139
}
],
"byProject": {
"talks": {
"tokens": 255239,
"costUSD": 16.09,
"sessions": 1
},
"aie-europe": {
"tokens": 678378,
"costUSD": 24.7,
"sessions": 2
},
"workos": {
"tokens": 5489364,
"costUSD": 511.21,
"sessions": 6
},
"authkit-tanstack-start": {
"tokens": 20429560,
"costUSD": 282.69,
"sessions": 10
},
"tokenmaxing": {
"tokens": 131606,
"costUSD": 5.69,
"sessions": 1
},
"cli": {
"tokens": 1051488,
"costUSD": 36.25,
"sessions": 5
},
"dotfiles": {
"tokens": 1226973,
"costUSD": 62.87,
"sessions": 1
},
"nicknisi.com": {
"tokens": 273625,
"costUSD": 81.03,
"sessions": 1
}
}
},
{
"date": "2026-04-30",
"tokens": 12106582,
"costUSD": 181.97,
"sessions": 17,
"messages": 776,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
215,
69,
135,
33,
0,
0,
43,
234,
0,
0,
2,
0,
16,
26,
3
],
"byTool": {
"claude-code": {
"tokens": 3995248,
"costUSD": 181.97,
"sessions": 15,
"messages": 672
},
"codex": {
"tokens": 8111334,
"costUSD": 0,
"sessions": 2,
"messages": 104
}
},
"byProvider": {
"anthropic": {
"tokens": 3995248,
"costUSD": 181.97
},
"openai": {
"tokens": 8111334,
"costUSD": 0
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 2953841,
"costUSD": 148.15,
"sessions": 12,
"messages": 516
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-7",
"tokens": 1041407,
"costUSD": 33.82,
"sessions": 2,
"messages": 151
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 5,
"messages": 5
},
{
"tool": "codex",
"provider": "openai",
"id": "gpt-5.5",
"tokens": 8111334,
"costUSD": 0,
"sessions": 2,
"messages": 104
}
],
"byProject": {
"authkit-tanstack-start": {
"tokens": 536085,
"costUSD": 18.71,
"sessions": 2
},
"workos-node": {
"tokens": 460564,
"costUSD": 12.3,
"sessions": 6
},
"cli": {
"tokens": 1327919,
"costUSD": 78.88,
"sessions": 5
},
"dotfiles": {
"tokens": 827869,
"costUSD": 27.78,
"sessions": 1
},
"workos": {
"tokens": 8954145,
"costUSD": 44.29,
"sessions": 3
}
}
},
{
"date": "2026-05-01",
"tokens": 1802036,
"costUSD": 56.76,
"sessions": 5,
"messages": 155,
"hourCounts": [
0,
0,
0,
0,
0,
0,
0,
0,
4,
44,
0,
0,
21,
0,
0,
5,
81,
0,
0,
0,
0,
0,
0,
0
],
"byTool": {
"claude-code": {
"tokens": 1802036,
"costUSD": 56.76,
"sessions": 5,
"messages": 155
}
},
"byProvider": {
"anthropic": {
"tokens": 1802036,
"costUSD": 56.76
}
},
"byModel": [
{
"tool": "claude-code",
"provider": "anthropic",
"id": "claude-opus-4-6",
"tokens": 1802036,
"costUSD": 56.76,
"sessions": 5,
"messages": 154
},
{
"tool": "claude-code",
"provider": "anthropic",
"id": "<synthetic>",
"tokens": 0,
"costUSD": 0,
"sessions": 1,
"messages": 1
}
],
"byProject": {
"workos-node": {
"tokens": 1802036,
"costUSD": 56.76,
"sessions": 5
}
}
}
],
"weeklyHighlights": [
{
"weekEnding": "2026-05-03",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/75",
"repo": "workos/authkit-tanstack-start",
"number": 75,
"title": "fix: eliminate server-side bundle leak via lazy handler bodies",
"state": "merged",
"additions": 609,
"deletions": 211,
"createdAt": "2026-04-30T14:06:36Z",
"mergedAt": "2026-05-01T21:16:26Z"
},
{
"url": "https://github.com/nicknisi/diffdad/pull/4",
"repo": "nicknisi/diffdad",
"number": 4,
"title": "feat: accent themes, DadMark logo, and font upgrade",
"state": "merged",
"additions": 706,
"deletions": 52,
"createdAt": "2026-05-01T19:43:10Z",
"mergedAt": "2026-05-01T20:14:06Z"
},
{
"url": "https://github.com/nicknisi/diffdad/pull/1",
"repo": "nicknisi/diffdad",
"number": 1,
"title": "fix: deduplicate hunks across chapters and fix comment overflow",
"state": "merged",
"additions": 407,
"deletions": 111,
"createdAt": "2026-05-01T16:30:10Z",
"mergedAt": "2026-05-01T16:42:53Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/74",
"repo": "workos/authkit-tanstack-start",
"number": 74,
"title": "feat(callback): centralize logging and add errorRedirectUrl option",
"state": "merged",
"additions": 265,
"deletions": 28,
"createdAt": "2026-04-29T20:22:22Z",
"mergedAt": "2026-05-01T21:16:51Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1578",
"repo": "workos/workos-node",
"number": 1578,
"title": "fix(webhooks): accept raw request bytes for signature verification",
"state": "open",
"additions": 225,
"deletions": 9,
"createdAt": "2026-05-01T03:14:35Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/cli/pull/139",
"repo": "workos/cli",
"number": 139,
"title": "fix: prevent workos auth login from hanging indefinitely",
"state": "merged",
"additions": 73,
"deletions": 159,
"createdAt": "2026-04-30T17:16:19Z",
"mergedAt": "2026-04-30T20:19:46Z"
},
{
"url": "https://github.com/workos/cli/pull/134",
"repo": "workos/cli",
"number": 134,
"title": "Fix webhook list empty URL column and truncate long event lists",
"state": "merged",
"additions": 111,
"deletions": 28,
"createdAt": "2026-04-28T13:58:54Z",
"mergedAt": "2026-04-28T22:11:40Z"
},
{
"url": "https://github.com/nicknisi/diffdad/pull/3",
"repo": "nicknisi/diffdad",
"number": 3,
"title": "fix: submit draft comments with review via GitHub review API",
"state": "merged",
"additions": 107,
"deletions": 19,
"createdAt": "2026-05-01T18:08:25Z",
"mergedAt": "2026-05-01T18:30:10Z"
},
{
"url": "https://github.com/workos/cli/pull/137",
"repo": "workos/cli",
"number": 137,
"title": "fix: --api-key flag takes precedence over WORKOS_API_KEY env var",
"state": "merged",
"additions": 95,
"deletions": 18,
"createdAt": "2026-04-30T15:47:11Z",
"mergedAt": "2026-04-30T16:22:39Z"
},
{
"url": "https://github.com/nicknisi/diffdad/pull/2",
"repo": "nicknisi/diffdad",
"number": 2,
"title": "fix: live-update PR metadata over SSE",
"state": "merged",
"additions": 24,
"deletions": 0,
"createdAt": "2026-05-01T17:28:46Z",
"mergedAt": "2026-05-01T17:32:33Z"
},
{
"url": "https://github.com/workos/authkit-react-router/pull/70",
"repo": "workos/authkit-react-router",
"number": 70,
"title": "v0.11.0",
"state": "merged",
"additions": 6,
"deletions": 4,
"createdAt": "2026-04-27T22:02:15Z",
"mergedAt": "2026-04-28T19:49:50Z"
}
],
"summary": "Work spanned two public repos alongside heavier sessions in internal projects. `workos/cli#134` fixed a display bug in the webhook list command — patching an empty URL column and adding truncation for long event lists. `workos/authkit-react-router#70` cut v0.11.0 with a small change, while the bulk of token activity fell on two private projects and dotfiles work."
},
{
"weekEnding": "2026-04-26",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-session/pull/25",
"repo": "workos/authkit-session",
"number": 25,
"title": "feat!: storage-owned PKCE verifier cookie with OAuth state binding",
"state": "merged",
"additions": 2752,
"deletions": 495,
"createdAt": "2026-04-17T22:16:29Z",
"mergedAt": "2026-04-20T21:57:02Z"
},
{
"url": "https://github.com/workos/cli/pull/130",
"repo": "workos/cli",
"number": 130,
"title": "feat: complete WorkOS skill install + refresh loop with doctor --fix",
"state": "merged",
"additions": 1283,
"deletions": 57,
"createdAt": "2026-04-26T14:09:24Z",
"mergedAt": "2026-04-26T22:42:52Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/66",
"repo": "workos/authkit-tanstack-start",
"number": 66,
"title": "feat!: PKCE state binding + storage-owned verifier cookies (authkit-session 0.4.0)",
"state": "merged",
"additions": 833,
"deletions": 484,
"createdAt": "2026-04-18T15:49:44Z",
"mergedAt": "2026-04-22T21:52:25Z"
},
{
"url": "https://github.com/workos/authkit-sveltekit/pull/16",
"repo": "workos/authkit-sveltekit",
"number": 16,
"title": "feat!: PKCE state binding + storage-owned verifier cookies (authkit-session 0.4.0)",
"state": "merged",
"additions": 786,
"deletions": 273,
"createdAt": "2026-04-17T22:29:13Z",
"mergedAt": "2026-04-22T21:21:34Z"
},
{
"url": "https://github.com/workos/skills/pull/25",
"repo": "workos/skills",
"number": 25,
"title": "fix(workos): tighten auth guidance and risky eval reruns",
"state": "merged",
"additions": 781,
"deletions": 86,
"createdAt": "2026-04-24T16:17:02Z",
"mergedAt": "2026-04-26T14:06:36Z"
},
{
"url": "https://github.com/workos/skills/pull/19",
"repo": "workos/skills",
"number": 19,
"title": "feat: add FGA, Pipes, Feature Flags, and Radar references + evals",
"state": "merged",
"additions": 703,
"deletions": 4,
"createdAt": "2026-04-14T17:21:26Z",
"mergedAt": "2026-04-27T03:20:23Z"
},
{
"url": "https://github.com/workos/cli/pull/125",
"repo": "workos/cli",
"number": 125,
"title": "fix: unbreak non-JS integration install flow (Django, .NET, Kotlin + others)",
"state": "merged",
"additions": 526,
"deletions": 143,
"createdAt": "2026-04-23T01:06:32Z",
"mergedAt": "2026-04-23T02:15:10Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/27",
"repo": "workos/authkit-session",
"number": 27,
"title": "feat!: per-flow PKCE verifier cookies + pure URL helpers (0.5.0)",
"state": "merged",
"additions": 468,
"deletions": 146,
"createdAt": "2026-04-23T01:29:31Z",
"mergedAt": "2026-04-23T16:13:51Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/68",
"repo": "workos/authkit-tanstack-start",
"number": 68,
"title": "Adopt per-flow PKCE cookies (authkit-session 0.5.1)",
"state": "merged",
"additions": 241,
"deletions": 97,
"createdAt": "2026-04-23T21:19:54Z",
"mergedAt": "2026-04-24T21:49:01Z"
},
{
"url": "https://github.com/workos/cli/pull/128",
"repo": "workos/cli",
"number": 128,
"title": "fix: improve installer auth recovery",
"state": "merged",
"additions": 156,
"deletions": 57,
"createdAt": "2026-04-24T01:50:57Z",
"mergedAt": "2026-04-24T03:12:47Z"
},
{
"url": "https://github.com/workos/skills/pull/23",
"repo": "workos/skills",
"number": 23,
"title": "feat(workos): close off CLI- and Dashboard-path fabrication",
"state": "merged",
"additions": 195,
"deletions": 12,
"createdAt": "2026-04-24T03:58:46Z",
"mergedAt": "2026-04-24T03:59:55Z"
},
{
"url": "https://github.com/workos/skills/pull/21",
"repo": "workos/skills",
"number": 21,
"title": "feat(workos): add terminology reference for docs URL lookups",
"state": "merged",
"additions": 168,
"deletions": 5,
"createdAt": "2026-04-20T20:34:58Z",
"mergedAt": "2026-04-20T21:08:05Z"
},
{
"url": "https://github.com/workos/authkit-sveltekit/pull/17",
"repo": "workos/authkit-sveltekit",
"number": 17,
"title": "feat(auth): adopt per-flow PKCE cookies (authkit-session 0.5.1)",
"state": "merged",
"additions": 115,
"deletions": 54,
"createdAt": "2026-04-23T18:34:30Z",
"mergedAt": "2026-04-24T23:13:54Z"
},
{
"url": "https://github.com/workos/skills/pull/26",
"repo": "workos/skills",
"number": 26,
"title": "feat(workos): add CLI upgrade-path topic and tarball smoke test",
"state": "merged",
"additions": 154,
"deletions": 4,
"createdAt": "2026-04-26T20:03:21Z",
"mergedAt": "2026-04-26T20:44:04Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/29",
"repo": "workos/authkit-session",
"number": 29,
"title": "test: integration coverage for hostile returnPathname sanitization (CWE-601)",
"state": "open",
"additions": 33,
"deletions": 0,
"createdAt": "2026-04-24T16:53:42Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/402",
"repo": "workos/authkit-nextjs",
"number": 402,
"title": "docs: add sign-in endpoint setup and impersonation requirements",
"state": "merged",
"additions": 29,
"deletions": 0,
"createdAt": "2026-04-09T10:20:34Z",
"mergedAt": "2026-04-20T20:05:24Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/406",
"repo": "workos/authkit-nextjs",
"number": 406,
"title": "fix: set PKCE cookie in ensureSignedIn server action flow",
"state": "merged",
"additions": 9,
"deletions": 14,
"createdAt": "2026-04-20T19:51:19Z",
"mergedAt": "2026-04-20T20:26:41Z"
},
{
"url": "https://github.com/workos/authkit-sveltekit/pull/18",
"repo": "workos/authkit-sveltekit",
"number": 18,
"title": "chore: release 0.3.0",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2026-04-24T23:21:19Z",
"mergedAt": "2026-04-24T23:22:11Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/71",
"repo": "workos/authkit-tanstack-start",
"number": 71,
"title": "feat(pkce)!: retroactively classify #68 for release-please (targets 0.7.0)",
"state": "merged",
"additions": 2,
"deletions": 0,
"createdAt": "2026-04-24T22:10:53Z",
"mergedAt": "2026-04-24T22:12:45Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/28",
"repo": "workos/authkit-session",
"number": 28,
"title": "v0.5.1",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2026-04-24T16:41:22Z",
"mergedAt": "2026-04-24T19:35:27Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/70",
"repo": "workos/authkit-tanstack-start",
"number": 70,
"title": "feat(pkce)!: retroactively classify #68 for release-please (targets 0.7.0)",
"state": "merged",
"additions": 0,
"deletions": 0,
"createdAt": "2026-04-24T22:04:31Z",
"mergedAt": "2026-04-24T22:05:22Z"
}
],
"summary": "A heavy week centered on hardening the PKCE OAuth flow across the WorkOS authkit ecosystem: `workos/authkit-session` saw two breaking releases (`#25`, `#27`) introducing storage-owned verifier cookies, per-flow cookie scoping, and pure URL helpers, which then propagated into `workos/authkit-tanstack-start` (`#66`, `#68`), `workos/authkit-sveltekit` (`#16`, `#17`), and `workos/authkit-nextjs` (`#406`). On the CLI side, `workos/cli` picked up a complete WorkOS skill install and refresh loop with doctor `--fix` (`#130`), a fix for non-JS integration installs covering Django, .NET, and Kotlin (`#125`), and improved installer auth recovery (`#128`). The `workos/skills` repo also received a cluster of additions and tightening: FGA, Pipes, Feature Flags, and Radar references (`#19`), stricter auth guidance and eval rerun controls (`#25`), CLI and Dashboard fabrication guardrails (`#23`), and a new CLI upgrade-path topic (`#26`)."
},
{
"weekEnding": "2026-04-19",
"pullRequests": [
{
"url": "https://github.com/workos/cli/pull/122",
"repo": "workos/cli",
"number": 122,
"title": "feat: CLI telemetry for all commands + crash reporting",
"state": "open",
"additions": 1979,
"deletions": 42,
"createdAt": "2026-04-14T23:55:36Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-session/pull/22",
"repo": "workos/authkit-session",
"number": 22,
"title": "chore: migrate from prettier to oxfmt and add oxlint",
"state": "merged",
"additions": 486,
"deletions": 53,
"createdAt": "2026-03-29T22:38:55Z",
"mergedAt": "2026-04-16T18:56:33Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/24",
"repo": "workos/authkit-session",
"number": 24,
"title": "fix: sanitize returnPathname decoded from OAuth state (CWE-601)",
"state": "closed",
"additions": 150,
"deletions": 6,
"createdAt": "2026-04-16T20:07:32Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-sveltekit/pull/15",
"repo": "workos/authkit-sveltekit",
"number": 15,
"title": "fix: prevent open redirect in OAuth callback (CWE-601)",
"state": "closed",
"additions": 89,
"deletions": 2,
"createdAt": "2026-04-16T19:52:06Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/skills/pull/16",
"repo": "workos/skills",
"number": 16,
"title": "chore: add Cursor plugin support alongside Claude Code plugin",
"state": "merged",
"additions": 56,
"deletions": 3,
"createdAt": "2026-04-13T21:06:40Z",
"mergedAt": "2026-04-13T21:12:41Z"
},
{
"url": "https://github.com/workos/skills/pull/20",
"repo": "workos/skills",
"number": 20,
"title": "chore: add Codex plugin support alongside Claude Code and Cursor plugins",
"state": "open",
"additions": 46,
"deletions": 0,
"createdAt": "2026-04-14T19:59:56Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/skills/pull/17",
"repo": "workos/skills",
"number": 17,
"title": "fix: tighten skill descriptions for more reliable triggering",
"state": "merged",
"additions": 2,
"deletions": 2,
"createdAt": "2026-04-13T21:13:47Z",
"mergedAt": "2026-04-13T21:14:17Z"
}
],
"summary": "Security hardening and cross-framework work dominated the week, with open-redirect fixes landing in `workos/authkit-session#24` and `workos/authkit-sveltekit#15` (both CWE-601) and substantial session-related work also touching `authkit-tanstack-start` and `authkit-react-router`. Telemetry and crash reporting were wired into `workos/cli#122`, while `workos/authkit-session#22` migrated formatting and linting to oxfmt and oxlint. The `workos/skills` repo saw a cluster of plugin ecosystem additions—Cursor in `#16`, Codex in `#20`—alongside a small fix in `#17` to improve skill description reliability."
},
{
"weekEnding": "2026-04-12",
"pullRequests": [
{
"url": "https://github.com/nicknisi/claude-plugins/pull/8",
"repo": "nicknisi/claude-plugins",
"number": 8,
"title": "feat(content): tool-agnostic conference-talk-builder with 22 narrative frameworks",
"state": "merged",
"additions": 3644,
"deletions": 468,
"createdAt": "2026-04-06T18:49:46Z",
"mergedAt": "2026-04-06T18:50:10Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/401",
"repo": "workos/authkit-nextjs",
"number": 401,
"title": "fix: allow dashboard impersonation to bypass PKCE/CSRF verification",
"state": "closed",
"additions": 158,
"deletions": 18,
"createdAt": "2026-04-08T14:34:05Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/64",
"repo": "workos/authkit-tanstack-start",
"number": 64,
"title": "ci: add release-please for automated releases",
"state": "merged",
"additions": 52,
"deletions": 14,
"createdAt": "2026-04-09T15:27:35Z",
"mergedAt": "2026-04-09T17:14:44Z"
}
],
"summary": "The bulk of work touched two areas: a tool-agnostic conference talk builder landed in `nicknisi/claude-plugins#8`, introducing 22 narrative frameworks alongside a large content expansion, while `workos/authkit-nextjs#401` addressed a fix allowing dashboard impersonation to bypass PKCE/CSRF verification. Alongside those public PRs, heavy session activity ran across internal projects and dotfiles, with lighter exploration in `authkit-tanstack-start` and related WorkOS tooling."
},
{
"weekEnding": "2026-04-05",
"pullRequests": [
{
"url": "https://github.com/workos/workos-custom-ui-authkit-example/pull/1",
"repo": "workos/workos-custom-ui-authkit-example",
"number": 1,
"title": "Modernize toolchain and convert server to Hono + TypeScript",
"state": "merged",
"additions": 5285,
"deletions": 6863,
"createdAt": "2026-04-02T20:54:31Z",
"mergedAt": "2026-04-02T21:07:33Z"
},
{
"url": "https://github.com/workos/cli/pull/107",
"repo": "workos/cli",
"number": 107,
"title": "refactor: emulator simplification — shared infra, domain helpers, server efficiency",
"state": "merged",
"additions": 761,
"deletions": 1126,
"createdAt": "2026-03-27T15:09:47Z",
"mergedAt": "2026-03-30T15:11:45Z"
},
{
"url": "https://github.com/nicknisi/dotfiles/pull/248",
"repo": "nicknisi/dotfiles",
"number": 248,
"title": "feat(tmux): unified agent orchestration with dashboard overhaul",
"state": "merged",
"additions": 522,
"deletions": 308,
"createdAt": "2026-03-30T14:20:59Z",
"mergedAt": "2026-03-30T14:22:20Z"
},
{
"url": "https://github.com/workos/skills/pull/13",
"repo": "workos/skills",
"number": 13,
"title": "fix: harden Next.js AuthKit skill against Server Component cookie violations",
"state": "merged",
"additions": 510,
"deletions": 274,
"createdAt": "2026-03-30T19:06:04Z",
"mergedAt": "2026-03-31T20:11:27Z"
},
{
"url": "https://github.com/workos/cli/pull/111",
"repo": "workos/cli",
"number": 111,
"title": "fix: prevent registerSubcommand from injecting false positional args",
"state": "merged",
"additions": 289,
"deletions": 49,
"createdAt": "2026-03-31T16:32:43Z",
"mergedAt": "2026-03-31T20:04:27Z"
},
{
"url": "https://github.com/workos/cli/pull/118",
"repo": "workos/cli",
"number": 118,
"title": "fix: detect service unavailability and fail fast with clear error",
"state": "merged",
"additions": 211,
"deletions": 9,
"createdAt": "2026-04-02T22:00:01Z",
"mergedAt": "2026-04-03T15:38:49Z"
},
{
"url": "https://github.com/workos/cli/pull/110",
"repo": "workos/cli",
"number": 110,
"title": "fix: add NextjsGrader check for getSignInUrl in Server Components",
"state": "merged",
"additions": 205,
"deletions": 6,
"createdAt": "2026-03-30T19:06:52Z",
"mergedAt": "2026-03-31T21:23:36Z"
},
{
"url": "https://github.com/workos/cli/pull/115",
"repo": "workos/cli",
"number": 115,
"title": "fix: skip device auth when unclaimed environment is active",
"state": "merged",
"additions": 57,
"deletions": 1,
"createdAt": "2026-04-01T16:45:55Z",
"mergedAt": "2026-04-01T16:54:30Z"
},
{
"url": "https://github.com/workos/cli/pull/114",
"repo": "workos/cli",
"number": 114,
"title": "chore: hide emulator commands and restore stable versioning",
"state": "merged",
"additions": 11,
"deletions": 33,
"createdAt": "2026-03-31T21:51:51Z",
"mergedAt": "2026-03-31T21:54:39Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1540",
"repo": "workos/workos-node",
"number": 1540,
"title": "fix: replace node:events with eventemitter3 in runtime client",
"state": "merged",
"additions": 24,
"deletions": 13,
"createdAt": "2026-04-04T14:13:34Z",
"mergedAt": "2026-04-04T19:10:23Z"
},
{
"url": "https://github.com/workos/cli/pull/113",
"repo": "workos/cli",
"number": 113,
"title": "fix: stop reading WORKOS_CLIENT_ID for CLI auth",
"state": "merged",
"additions": 1,
"deletions": 11,
"createdAt": "2026-03-31T21:14:59Z",
"mergedAt": "2026-03-31T21:21:29Z"
},
{
"url": "https://github.com/workos/skills/pull/15",
"repo": "workos/skills",
"number": 15,
"title": "docs: clarify that references are not standalone skills",
"state": "merged",
"additions": 9,
"deletions": 0,
"createdAt": "2026-04-03T17:14:24Z",
"mergedAt": "2026-04-03T17:18:17Z"
}
],
"summary": "Work spanned `workos/cli`, `workos/skills`, `workos/workos-node`, and `nicknisi/dotfiles` with a focus on emulator infrastructure and AuthKit correctness. `workos/cli#107` refactored emulator shared infrastructure and domain helpers with a net reduction of over 300 lines, while `workos/cli#111` and `workos/cli#115` fixed positional arg injection and device auth bypass edge cases; `workos/skills#13` and `workos/cli#110` hardened the Next.js AuthKit skill against Server Component cookie violations by adding a `getSignInUrl` grader check. `workos/workos-node#1540` swapped `node:events` for `eventemitter3` to fix runtime compatibility, and `nicknisi/dotfiles#248` overhauled tmux config around unified agent orchestration; session activity also touched several private projects alongside `authkit-react`, `authkit-nextjs`, and `authkit-tanstack-start`."
},
{
"weekEnding": "2026-03-29",
"pullRequests": [
{
"url": "https://github.com/workos/cli/pull/100",
"repo": "workos/cli",
"number": 100,
"title": "feat: full WorkOS API emulator (emulate, dev, RBAC, webhooks, events, 84% API coverage)",
"state": "merged",
"additions": 13431,
"deletions": 9,
"createdAt": "2026-03-24T23:16:02Z",
"mergedAt": "2026-03-26T00:43:42Z"
},
{
"url": "https://github.com/workos/case/pull/7",
"repo": "workos/case",
"number": 7,
"title": "feat(pipeline): implement Harness 2.0 — iterative evaluation, adaptive profiles, and ablation metrics",
"state": "merged",
"additions": 3501,
"deletions": 69,
"createdAt": "2026-03-28T16:54:51Z",
"mergedAt": "2026-03-29T00:31:34Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/397",
"repo": "workos/authkit-nextjs",
"number": 397,
"title": "chore: switch from prettier/eslint to oxfmt/oxlint",
"state": "merged",
"additions": 656,
"deletions": 2079,
"createdAt": "2026-03-24T14:59:23Z",
"mergedAt": "2026-03-25T15:29:45Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/399",
"repo": "workos/authkit-nextjs",
"number": 399,
"title": "feat: add E2E integration tests with WorkOS emulator",
"state": "closed",
"additions": 1738,
"deletions": 45,
"createdAt": "2026-03-26T04:11:40Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-session/pull/21",
"repo": "workos/authkit-session",
"number": 21,
"title": "chore: migrate from Prettier to oxfmt",
"state": "closed",
"additions": 342,
"deletions": 380,
"createdAt": "2026-03-29T16:17:57Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/case/pull/6",
"repo": "workos/case",
"number": 6,
"title": "feat(tracing): add per-run tool-level trace logging",
"state": "merged",
"additions": 322,
"deletions": 3,
"createdAt": "2026-03-28T15:01:38Z",
"mergedAt": "2026-03-28T15:02:18Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/396",
"repo": "workos/authkit-nextjs",
"number": 396,
"title": "chore: upgrade to TypeScript 6",
"state": "merged",
"additions": 103,
"deletions": 175,
"createdAt": "2026-03-24T14:07:45Z",
"mergedAt": "2026-03-24T16:17:35Z"
},
{
"url": "https://github.com/workos/authkit-react/pull/89",
"repo": "workos/authkit-react",
"number": 89,
"title": "chore: add release-please automation and replace coana with socket",
"state": "merged",
"additions": 144,
"deletions": 117,
"createdAt": "2026-03-24T17:19:01Z",
"mergedAt": "2026-03-24T19:01:26Z"
},
{
"url": "https://github.com/workos/authkit-js/pull/113",
"repo": "workos/authkit-js",
"number": 113,
"title": "chore: update CI workflows with release-please, PR linting, and Socket analysis",
"state": "merged",
"additions": 140,
"deletions": 113,
"createdAt": "2026-03-24T17:15:02Z",
"mergedAt": "2026-03-24T19:01:38Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/398",
"repo": "workos/authkit-nextjs",
"number": 398,
"title": "fix: harden PKCE/CSRF for v3.0.0 release",
"state": "merged",
"additions": 162,
"deletions": 35,
"createdAt": "2026-03-25T17:53:46Z",
"mergedAt": "2026-03-25T18:59:49Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/386",
"repo": "workos/authkit-nextjs",
"number": 386,
"title": "fix(auth): return signInUrl from server actions to avoid CORS errors",
"state": "merged",
"additions": 184,
"deletions": 9,
"createdAt": "2026-03-10T14:28:08Z",
"mergedAt": "2026-03-23T17:49:20Z"
},
{
"url": "https://github.com/nicknisi/claude-plugins/pull/7",
"repo": "nicknisi/claude-plugins",
"number": 7,
"title": "feat(ideation): anti-sycophancy rules, failure modes, and contract lineage",
"state": "merged",
"additions": 107,
"deletions": 32,
"createdAt": "2026-03-28T14:54:55Z",
"mergedAt": "2026-03-28T14:55:28Z"
},
{
"url": "https://github.com/workos/cli/pull/101",
"repo": "workos/cli",
"number": 101,
"title": "feat: enable beta prerelease versioning",
"state": "merged",
"additions": 22,
"deletions": 2,
"createdAt": "2026-03-26T00:12:51Z",
"mergedAt": "2026-03-26T00:31:43Z"
},
{
"url": "https://github.com/workos/authkit-js/pull/114",
"repo": "workos/authkit-js",
"number": 114,
"title": "feat: support multi-app cookies and scoped storage keys",
"state": "merged",
"additions": 4,
"deletions": 1,
"createdAt": "2026-03-24T21:42:15Z",
"mergedAt": "2026-03-24T21:46:22Z"
},
{
"url": "https://github.com/workos/cli/pull/104",
"repo": "workos/cli",
"number": 104,
"title": "fix: use prerelease versioning strategy for beta releases",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2026-03-26T00:49:38Z",
"mergedAt": "2026-03-26T00:50:51Z"
}
],
"summary": "The heaviest lift was `workos/cli#100`, which shipped a full WorkOS API emulator with RBAC, webhook, and event support at 84% API coverage, alongside `workos/cli#101` and `workos/cli#104` wiring up beta prerelease versioning. On the authkit side, `workos/authkit-nextjs#396` upgraded to TypeScript 6, `workos/authkit-nextjs#398` hardened PKCE/CSRF for the v3.0.0 release, `workos/authkit-nextjs#386` fixed a CORS issue in server actions, and `workos/authkit-nextjs#397` swapped Prettier/ESLint for oxfmt/oxlint — with parallel linting/CI hygiene applied to `workos/authkit-react#89` and `workos/authkit-js#113` as well. `workos/case#6` added per-run tool-level trace logging and `workos/case#7` landed Harness 2.0, an iterative evaluation pipeline with adaptive profiles and ablation metrics."
},
{
"weekEnding": "2026-03-22",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-nextjs/pull/388",
"repo": "workos/authkit-nextjs",
"number": 388,
"title": "feat!: add OAuth state verification on callback to prevent CSRF attacks",
"state": "merged",
"additions": 481,
"deletions": 333,
"createdAt": "2026-03-12T04:34:58Z",
"mergedAt": "2026-03-20T22:12:33Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/56",
"repo": "workos/authkit-tanstack-start",
"number": 56,
"title": "chore: replace prettier with oxfmt and oxlint",
"state": "merged",
"additions": 457,
"deletions": 139,
"createdAt": "2026-03-11T15:16:23Z",
"mergedAt": "2026-03-20T00:04:32Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/20",
"repo": "workos/authkit-session",
"number": 20,
"title": "feat(session): add configurable session encoding with migration support",
"state": "closed",
"additions": 405,
"deletions": 19,
"createdAt": "2026-03-17T04:24:49Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/cli/pull/96",
"repo": "workos/cli",
"number": 96,
"title": "fix: improve installer error handling, env var uploads, and port detection",
"state": "open",
"additions": 408,
"deletions": 14,
"createdAt": "2026-03-16T22:28:52Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/cli/pull/94",
"repo": "workos/cli",
"number": 94,
"title": "fix: auto-install skills to coding agents after install",
"state": "merged",
"additions": 210,
"deletions": 2,
"createdAt": "2026-03-16T14:38:13Z",
"mergedAt": "2026-03-16T14:44:39Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/383",
"repo": "workos/authkit-nextjs",
"number": 383,
"title": "fix(actions): catch TokenRefreshError in refreshAccessTokenAction to prevent 500s",
"state": "merged",
"additions": 97,
"deletions": 39,
"createdAt": "2026-03-08T16:48:16Z",
"mergedAt": "2026-03-20T00:35:18Z"
},
{
"url": "https://github.com/workos/cli/pull/97",
"repo": "workos/cli",
"number": 97,
"title": "fix: add `workos seed --init` to scaffold example seed file",
"state": "merged",
"additions": 126,
"deletions": 4,
"createdAt": "2026-03-17T16:15:34Z",
"mergedAt": "2026-03-17T17:06:06Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/391",
"repo": "workos/authkit-nextjs",
"number": 391,
"title": "chore: split tsconfig into app/test project references",
"state": "merged",
"additions": 81,
"deletions": 45,
"createdAt": "2026-03-13T00:58:03Z",
"mergedAt": "2026-03-20T22:13:00Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/384",
"repo": "workos/authkit-nextjs",
"number": 384,
"title": "feat(middleware): add authkitProxy and handleAuthkitProxy aliases for proxy.ts",
"state": "merged",
"additions": 57,
"deletions": 10,
"createdAt": "2026-03-09T00:04:28Z",
"mergedAt": "2026-03-20T16:27:03Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1527",
"repo": "workos/workos-node",
"number": 1527,
"title": "fix(vault): forward order and before params in listObjects",
"state": "merged",
"additions": 63,
"deletions": 3,
"createdAt": "2026-03-19T14:30:02Z",
"mergedAt": "2026-03-19T16:10:00Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/55",
"repo": "workos/authkit-tanstack-start",
"number": 55,
"title": "fix(session): use auth context refresh token instead of stale request cookie",
"state": "merged",
"additions": 46,
"deletions": 16,
"createdAt": "2026-03-08T17:06:22Z",
"mergedAt": "2026-03-20T22:11:03Z"
},
{
"url": "https://github.com/workos/cli/pull/93",
"repo": "workos/cli",
"number": 93,
"title": "refactor: move claim to `workos env claim` subcommand",
"state": "merged",
"additions": 33,
"deletions": 23,
"createdAt": "2026-03-16T14:15:02Z",
"mergedAt": "2026-03-16T14:16:43Z"
},
{
"url": "https://github.com/workos/cli/pull/99",
"repo": "workos/cli",
"number": 99,
"title": "ci: add Socket Tier 1 Reachability Analysis workflow",
"state": "merged",
"additions": 40,
"deletions": 0,
"createdAt": "2026-03-19T15:07:23Z",
"mergedAt": "2026-03-19T15:18:46Z"
},
{
"url": "https://github.com/workos/skills/pull/10",
"repo": "workos/skills",
"number": 10,
"title": "fix: broaden skill description for more reliable triggering",
"state": "merged",
"additions": 27,
"deletions": 1,
"createdAt": "2026-03-16T22:28:58Z",
"mergedAt": "2026-03-17T22:29:59Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1524",
"repo": "workos/workos-node",
"number": 1524,
"title": "fix(events): add missing order parameter to listEvents",
"state": "merged",
"additions": 16,
"deletions": 0,
"createdAt": "2026-03-18T14:48:01Z",
"mergedAt": "2026-03-18T19:00:59Z"
}
],
"summary": "A busy week centered on auth hardening and CLI tooling across the WorkOS ecosystem. On the auth side, `workos/authkit-nextjs#388` added OAuth state verification to prevent CSRF attacks on the callback route, `workos/authkit-nextjs#383` caught `TokenRefreshError` in `refreshAccessTokenAction` to stop unhandled 500s, and `workos/authkit-session#20` introduced configurable session encoding with migration support; `workos/authkit-nextjs#384` also added `authkitProxy` aliases in the middleware layer. The `workos/cli` work covered auto-installing skills to coding agents on install (`#94`), a `--init` flag for scaffolding seed files (`#97`), a refactor moving claim logic under `workos env claim` (`#93`), and a Socket Tier 1 Reachability Analysis CI workflow (`#99`), while `workos/workos-node` picked up two parameter-forwarding fixes in the vault and events APIs (`#1527`, `#1524`)."
},
{
"weekEnding": "2026-03-15",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-nextjs/pull/374",
"repo": "workos/authkit-nextjs",
"number": 374,
"title": "feat: add PKCE support for OAuth 2.1 compliance",
"state": "merged",
"additions": 5091,
"deletions": 4004,
"createdAt": "2026-02-24T18:31:03Z",
"mergedAt": "2026-03-11T15:34:23Z"
},
{
"url": "https://github.com/workos/cli/pull/91",
"repo": "workos/cli",
"number": 91,
"title": "feat: add zero-auth install flow with claim command",
"state": "merged",
"additions": 3517,
"deletions": 77,
"createdAt": "2026-03-10T23:32:55Z",
"mergedAt": "2026-03-13T16:30:31Z"
},
{
"url": "https://github.com/workos/cli/pull/88",
"repo": "workos/cli",
"number": 88,
"title": "feat: consume skills from @workos/skills package",
"state": "merged",
"additions": 148,
"deletions": 3300,
"createdAt": "2026-03-07T21:24:32Z",
"mergedAt": "2026-03-09T16:46:17Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/54",
"repo": "workos/authkit-tanstack-start",
"number": 54,
"title": "feat: add Impersonation component",
"state": "merged",
"additions": 438,
"deletions": 1,
"createdAt": "2026-02-20T21:12:13Z",
"mergedAt": "2026-03-11T15:02:58Z"
},
{
"url": "https://github.com/workos/cli/pull/89",
"repo": "workos/cli",
"number": 89,
"title": "fix(auth): auto-provision staging environment after login",
"state": "merged",
"additions": 238,
"deletions": 1,
"createdAt": "2026-03-09T21:04:02Z",
"mergedAt": "2026-03-10T19:14:47Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/59",
"repo": "workos/authkit-tanstack-start",
"number": 59,
"title": "fix(client): remove useNavigate from AuthKitProvider to avoid SSR warning",
"state": "closed",
"additions": 88,
"deletions": 60,
"createdAt": "2026-03-15T02:21:56Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/58",
"repo": "workos/authkit-tanstack-start",
"number": 58,
"title": "fix(client): remove unconditional useNavigate call from AuthKitProvider",
"state": "closed",
"additions": 66,
"deletions": 60,
"createdAt": "2026-03-12T00:20:12Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/392",
"repo": "workos/authkit-nextjs",
"number": 392,
"title": "fix: make PKCE opt-in to avoid breaking custom middleware proxies",
"state": "merged",
"additions": 44,
"deletions": 39,
"createdAt": "2026-03-13T01:42:34Z",
"mergedAt": "2026-03-13T01:54:29Z"
}
],
"summary": "Work spanned CLI tooling, AuthKit integrations, and auth protocol changes across several repos. The `workos/cli` saw the most activity, with `#91` adding a zero-auth install flow with a claim command and `#88` migrating skills consumption to the `@workos/skills` package. `workos/authkit-tanstack-start#54` added an Impersonation component, while `workos/authkit-nextjs#392` made PKCE opt-in to avoid breaking custom middleware proxies."
},
{
"weekEnding": "2026-03-08",
"pullRequests": [
{
"url": "https://github.com/workos/skills/pull/4",
"repo": "workos/skills",
"number": 4,
"title": "feat: add workos-widgets skill with on-demand OpenAPI spec querying",
"state": "merged",
"additions": 12441,
"deletions": 282,
"createdAt": "2026-03-06T16:02:33Z",
"mergedAt": "2026-03-06T20:07:46Z"
},
{
"url": "https://github.com/workos/cli/pull/76",
"repo": "workos/cli",
"number": 76,
"title": "feat: CLI management commands for all WorkOS resources",
"state": "merged",
"additions": 11768,
"deletions": 509,
"createdAt": "2026-03-03T00:26:24Z",
"mergedAt": "2026-03-04T00:05:48Z"
},
{
"url": "https://github.com/workos/skills/pull/5",
"repo": "workos/skills",
"number": 5,
"title": "Replace generation pipeline with lean topic files (doc URLs + gotchas)",
"state": "merged",
"additions": 556,
"deletions": 10183,
"createdAt": "2026-03-06T22:49:26Z",
"mergedAt": "2026-03-07T16:09:18Z"
},
{
"url": "https://github.com/workos/cli/pull/78",
"repo": "workos/cli",
"number": 78,
"title": "chore: expand eval coverage for backend SDKs and SvelteKit",
"state": "merged",
"additions": 3609,
"deletions": 60,
"createdAt": "2026-03-04T18:03:27Z",
"mergedAt": "2026-03-05T21:54:22Z"
},
{
"url": "https://github.com/workos/skills/pull/6",
"repo": "workos/skills",
"number": 6,
"title": "feat: consolidate all skills into single-source references",
"state": "merged",
"additions": 2805,
"deletions": 506,
"createdAt": "2026-03-07T20:43:43Z",
"mergedAt": "2026-03-07T21:17:43Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/378",
"repo": "workos/authkit-nextjs",
"number": 378,
"title": "fix: improve compatibility with non-Next.js environments",
"state": "merged",
"additions": 2366,
"deletions": 601,
"createdAt": "2026-03-03T02:25:24Z",
"mergedAt": "2026-03-03T17:50:18Z"
},
{
"url": "https://github.com/workos/cli/pull/75",
"repo": "workos/cli",
"number": 75,
"title": "feat: non-TTY mode for agent-friendly CLI",
"state": "merged",
"additions": 2500,
"deletions": 232,
"createdAt": "2026-02-28T20:12:01Z",
"mergedAt": "2026-03-02T19:37:42Z"
},
{
"url": "https://github.com/nicknisi/claude-plugins/pull/6",
"repo": "nicknisi/claude-plugins",
"number": 6,
"title": "feat(ideation): execution hardening — scout, reviewer, and build-verify-review loop",
"state": "merged",
"additions": 604,
"deletions": 699,
"createdAt": "2026-03-03T01:03:10Z",
"mergedAt": "2026-03-06T18:56:39Z"
},
{
"url": "https://github.com/workos/cli/pull/86",
"repo": "workos/cli",
"number": 86,
"title": "feat!: add `workos skills` subcommand group (install, uninstall, list)",
"state": "merged",
"additions": 735,
"deletions": 59,
"createdAt": "2026-03-07T16:37:37Z",
"mergedAt": "2026-03-07T18:01:18Z"
},
{
"url": "https://github.com/workos/cli/pull/81",
"repo": "workos/cli",
"number": 81,
"title": "fix: auth credential storage and transient error handling",
"state": "merged",
"additions": 192,
"deletions": 41,
"createdAt": "2026-03-05T19:57:56Z",
"mergedAt": "2026-03-05T20:52:28Z"
},
{
"url": "https://github.com/workos/cli/pull/84",
"repo": "workos/cli",
"number": 84,
"title": "feat!: move login/logout to auth subcommand, add auth status",
"state": "merged",
"additions": 147,
"deletions": 47,
"createdAt": "2026-03-05T21:20:57Z",
"mergedAt": "2026-03-05T22:10:53Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/381",
"repo": "workos/authkit-nextjs",
"number": 381,
"title": "fix: prevent refreshAccessTokenAction from throwing 500s",
"state": "closed",
"additions": 132,
"deletions": 33,
"createdAt": "2026-03-08T14:55:54Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/382",
"repo": "workos/authkit-nextjs",
"number": 382,
"title": "fix: handle TokenRefreshError in server actions to prevent 500s",
"state": "closed",
"additions": 79,
"deletions": 3,
"createdAt": "2026-03-08T15:27:50Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/cli/pull/83",
"repo": "workos/cli",
"number": 83,
"title": "fix: improve TanStack Start skill to reduce first-attempt build failures",
"state": "merged",
"additions": 47,
"deletions": 13,
"createdAt": "2026-03-05T20:39:01Z",
"mergedAt": "2026-03-05T21:00:23Z"
},
{
"url": "https://github.com/workos/cli/pull/77",
"repo": "workos/cli",
"number": 77,
"title": "fix: TanStack Start friction log fixes for middleware and doctor checks",
"state": "merged",
"additions": 47,
"deletions": 8,
"createdAt": "2026-03-04T15:49:29Z",
"mergedAt": "2026-03-05T20:33:33Z"
},
{
"url": "https://github.com/workos/cli/pull/79",
"repo": "workos/cli",
"number": 79,
"title": "fix: correct skills directory path resolution in getSkillsDir",
"state": "merged",
"additions": 23,
"deletions": 10,
"createdAt": "2026-03-05T17:32:34Z",
"mergedAt": "2026-03-05T17:43:32Z"
}
],
"summary": "A heavy week across the WorkOS CLI and skills ecosystem, with `workos/cli#76` adding management commands for all WorkOS resources, `workos/cli#75` introducing non-TTY agent-friendly output, and `workos/cli#86` adding a `workos skills` subcommand group for install, uninstall, and list. The `workos/skills` repo saw significant restructuring via `workos/skills#4` (on-demand OpenAPI spec querying for a workos-widgets skill), `workos/skills#5` (replacing the generation pipeline with lean topic files), and `workos/skills#6` (consolidating all skills into single-source references). `workos/authkit-nextjs#378` improved compatibility with non-Next.js environments, and `nicknisi/claude-plugins#6` hardened the ideation plugin's execution loop with scout, reviewer, and build-verify-review stages."
},
{
"weekEnding": "2026-03-01",
"pullRequests": [
{
"url": "https://github.com/workos/skills/pull/3",
"repo": "workos/skills",
"number": 3,
"title": "feat: eval framework for measuring skill effectiveness",
"state": "merged",
"additions": 10210,
"deletions": 4803,
"createdAt": "2026-02-26T16:22:15Z",
"mergedAt": "2026-02-26T16:22:53Z"
},
{
"url": "https://github.com/workos/cli/pull/73",
"repo": "workos/cli",
"number": 73,
"title": "chore: update dependencies to latest versions",
"state": "merged",
"additions": 566,
"deletions": 118,
"createdAt": "2026-02-27T16:35:21Z",
"mergedAt": "2026-02-27T17:14:56Z"
},
{
"url": "https://github.com/workos/cli/pull/72",
"repo": "workos/cli",
"number": 72,
"title": "chore: replace prettier with oxlint and oxfmt",
"state": "merged",
"additions": 504,
"deletions": 85,
"createdAt": "2026-02-25T15:11:39Z",
"mergedAt": "2026-02-25T15:31:52Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1467",
"repo": "workos/workos-node",
"number": 1467,
"title": "ci: add release-please and conventional commit enforcement",
"state": "merged",
"additions": 68,
"deletions": 194,
"createdAt": "2026-02-05T22:03:34Z",
"mergedAt": "2026-02-24T22:16:20Z"
},
{
"url": "https://github.com/workos/cli/pull/69",
"repo": "workos/cli",
"number": 69,
"title": "fix: ensure .env.local is added to .gitignore during install",
"state": "merged",
"additions": 111,
"deletions": 3,
"createdAt": "2026-02-20T22:20:38Z",
"mergedAt": "2026-02-24T22:47:47Z"
},
{
"url": "https://github.com/workos/cli/pull/68",
"repo": "workos/cli",
"number": 68,
"title": "fix(doctor): warn when AuthKitProvider missing apiHostname prop",
"state": "merged",
"additions": 93,
"deletions": 20,
"createdAt": "2026-02-20T16:42:03Z",
"mergedAt": "2026-02-24T22:25:14Z"
}
],
"summary": "Work centered on `workos/skills#3`, which introduced an eval framework for measuring skill effectiveness, and a cluster of `workos/cli` fixes covering `.gitignore` hygiene during install (`#69`) and a missing `apiHostname` prop warning in the doctor command (`#68`), alongside a dependency update (`#73`). `workos/workos-node#1467` added release-please and conventional commit enforcement to the Node SDK's CI pipeline. Session activity also touched `authkit-nextjs`, `authkit-tanstack-start`, and an internal project, alongside `claude-plugins` and `workos/cli` work that didn't produce public PRs."
},
{
"weekEnding": "2026-02-22",
"pullRequests": [
{
"url": "https://github.com/workos/skills/pull/2",
"repo": "workos/skills",
"number": 2,
"title": "Skill quality framework: progressive disclosure, feedback system, V2 improvements",
"state": "merged",
"additions": 9782,
"deletions": 12868,
"createdAt": "2026-02-20T01:16:39Z",
"mergedAt": "2026-02-20T01:45:26Z"
},
{
"url": "https://github.com/workos/expo-authkit-example/pull/5",
"repo": "workos/expo-authkit-example",
"number": 5,
"title": "Replace react-native-quick-crypto with expo-crypto for Expo Go support",
"state": "merged",
"additions": 989,
"deletions": 3240,
"createdAt": "2026-02-17T15:39:53Z",
"mergedAt": "2026-02-17T15:45:24Z"
},
{
"url": "https://github.com/workos/cli/pull/62",
"repo": "workos/cli",
"number": 62,
"title": "feat: major workos doctor overhaul — visual refresh, multi-language, AI analysis",
"state": "merged",
"additions": 3238,
"deletions": 127,
"createdAt": "2026-02-18T00:27:31Z",
"mergedAt": "2026-02-18T19:59:46Z"
},
{
"url": "https://github.com/workos/cli/pull/59",
"repo": "workos/cli",
"number": 59,
"title": "feat: add environment, organization, and user management commands",
"state": "merged",
"additions": 2236,
"deletions": 73,
"createdAt": "2026-02-17T21:40:50Z",
"mergedAt": "2026-02-17T23:24:57Z"
},
{
"url": "https://github.com/workos/cli/pull/64",
"repo": "workos/cli",
"number": 64,
"title": "fix: ground AI analysis in SDK documentation",
"state": "merged",
"additions": 187,
"deletions": 43,
"createdAt": "2026-02-18T21:08:41Z",
"mergedAt": "2026-02-18T21:13:27Z"
},
{
"url": "https://github.com/workos/skills/pull/1",
"repo": "workos/skills",
"number": 1,
"title": "Fix dsync rule to acknowledge Events API polling",
"state": "closed",
"additions": 31,
"deletions": 16,
"createdAt": "2026-02-19T00:45:45Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/cli/pull/61",
"repo": "workos/cli",
"number": 61,
"title": "fix: replace dotenv devDependency with inline env parser in doctor",
"state": "merged",
"additions": 27,
"deletions": 4,
"createdAt": "2026-02-18T00:01:23Z",
"mergedAt": "2026-02-18T00:06:32Z"
},
{
"url": "https://github.com/workos/cli/pull/63",
"repo": "workos/cli",
"number": 63,
"title": "fix: installer skill loop and Node deprecation warning",
"state": "merged",
"additions": 5,
"deletions": 7,
"createdAt": "2026-02-18T20:03:35Z",
"mergedAt": "2026-02-18T20:04:40Z"
}
],
"summary": "Work spanned two `workos` repositories heavily: `workos/cli` saw a run of environment, organization, and user management commands in `#59`, a `workos doctor` overhaul with visual refresh, multi-language support, and AI analysis in `#62`, and a dependency fix replacing `dotenv` with an inline env parser in `#61`. `workos/skills#2` landed a large-scale quality framework rework covering progressive disclosure, a feedback system, and V2 improvements, replacing more content than it added. Lighter sessions touched `authkit-tanstack-start` and adjacent AuthKit example projects without producing public PRs."
},
{
"weekEnding": "2026-02-15",
"pullRequests": [
{
"url": "https://github.com/workos/cli/pull/49",
"repo": "workos/cli",
"number": 49,
"title": "feat: multi-SDK expansion with auto-discovery registry",
"state": "merged",
"additions": 7080,
"deletions": 916,
"createdAt": "2026-02-10T13:49:33Z",
"mergedAt": "2026-02-11T04:16:53Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/367",
"repo": "workos/authkit-nextjs",
"number": 367,
"title": "chore: migrate from Jest to Vitest",
"state": "merged",
"additions": 1651,
"deletions": 3180,
"createdAt": "2026-02-07T17:59:39Z",
"mergedAt": "2026-02-09T16:08:16Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/370",
"repo": "workos/authkit-nextjs",
"number": 370,
"title": "Add example app as pnpm workspace package",
"state": "merged",
"additions": 4272,
"deletions": 251,
"createdAt": "2026-02-09T22:47:49Z",
"mergedAt": "2026-02-10T04:31:43Z"
},
{
"url": "https://github.com/workos/cli/pull/57",
"repo": "workos/cli",
"number": 57,
"title": "feat: agent self-correction via validation feedback loop",
"state": "merged",
"additions": 1563,
"deletions": 188,
"createdAt": "2026-02-14T14:50:43Z",
"mergedAt": "2026-02-14T21:50:35Z"
},
{
"url": "https://github.com/workos/cli/pull/50",
"repo": "workos/cli",
"number": 50,
"title": "feat: add `workos doctor` command for diagnosing integration issues",
"state": "merged",
"additions": 1181,
"deletions": 37,
"createdAt": "2026-02-10T15:50:12Z",
"mergedAt": "2026-02-11T04:22:51Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/368",
"repo": "workos/authkit-nextjs",
"number": 368,
"title": "chore: upgrade @workos-inc/node to v8",
"state": "merged",
"additions": 93,
"deletions": 510,
"createdAt": "2026-02-09T01:41:43Z",
"mergedAt": "2026-02-09T16:42:26Z"
},
{
"url": "https://github.com/nicknisi/claude-plugins/pull/4",
"repo": "nicknisi/claude-plugins",
"number": 4,
"title": "feat(ideation): add per-component feedback loops",
"state": "merged",
"additions": 321,
"deletions": 59,
"createdAt": "2026-02-14T14:23:20Z",
"mergedAt": "2026-02-14T14:29:14Z"
},
{
"url": "https://github.com/workos/cli/pull/52",
"repo": "workos/cli",
"number": 52,
"title": "fix: prefer existing middleware.ts over proxy.ts for Next.js 16+",
"state": "merged",
"additions": 247,
"deletions": 44,
"createdAt": "2026-02-13T02:46:49Z",
"mergedAt": "2026-02-13T03:36:43Z"
},
{
"url": "https://github.com/nicknisi/claude-plugins/pull/5",
"repo": "nicknisi/claude-plugins",
"number": 5,
"title": "feat(content): add AI writing tells checklist to blog-post-writer",
"state": "merged",
"additions": 152,
"deletions": 3,
"createdAt": "2026-02-15T01:42:27Z",
"mergedAt": "2026-02-15T01:43:03Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1493",
"repo": "workos/workos-node",
"number": 1493,
"title": "v8.5.0",
"state": "merged",
"additions": 15,
"deletions": 4,
"createdAt": "2026-02-14T02:23:13Z",
"mergedAt": "2026-02-14T02:38:12Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/369",
"repo": "workos/authkit-nextjs",
"number": 369,
"title": "v2.14.0",
"state": "merged",
"additions": 2,
"deletions": 2,
"createdAt": "2026-02-09T16:46:08Z",
"mergedAt": "2026-02-11T18:39:22Z"
}
],
"summary": "Work centered heavily on `workos/cli`, where `#49` added multi-SDK expansion with an auto-discovery registry and `#57` introduced an agent self-correction mechanism via a validation feedback loop, alongside `#50`'s new `workos doctor` diagnostic command and `#52`'s Next.js 16+ middleware path fix. On the `workos/authkit-nextjs` side, `#367` migrated the test suite from Jest to Vitest, `#370` added an example app as a pnpm workspace package, and `#368` bumped the node SDK to v8, which shipped as `workos/workos-node#1493`. `nicknisi/claude-plugins` saw two additions: per-component feedback loops in `#4` and an AI writing tells checklist for the blog-post-writer prompt in `#5`."
},
{
"weekEnding": "2026-02-08",
"pullRequests": [
{
"url": "https://github.com/workos/cli/pull/38",
"repo": "workos/cli",
"number": 38,
"title": "fix(nextjs): improve middleware composition guidance",
"state": "closed",
"additions": 5329,
"deletions": 275,
"createdAt": "2026-02-03T22:52:40Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/cli/pull/40",
"repo": "workos/cli",
"number": 40,
"title": "chore(evals): add quality grading, latency tracking, and edge case fixtures",
"state": "merged",
"additions": 5235,
"deletions": 258,
"createdAt": "2026-02-03T22:56:48Z",
"mergedAt": "2026-02-03T22:58:30Z"
},
{
"url": "https://github.com/workos/cli/pull/36",
"repo": "workos/cli",
"number": 36,
"title": "test: add eval framework for installer agent testing",
"state": "merged",
"additions": 4280,
"deletions": 31,
"createdAt": "2026-02-01T04:59:59Z",
"mergedAt": "2026-02-02T13:36:09Z"
},
{
"url": "https://github.com/workos/authkit-sveltekit/pull/6",
"repo": "workos/authkit-sveltekit",
"number": 6,
"title": "feat: upgrade to authkit-session v0.3.4, add example app",
"state": "merged",
"additions": 2309,
"deletions": 1289,
"createdAt": "2026-02-04T19:52:13Z",
"mergedAt": "2026-02-04T20:22:11Z"
},
{
"url": "https://github.com/TanStack/router/pull/5394",
"repo": "TanStack/router",
"number": 5394,
"title": "examples: Update WorkOS example to use new AuthKit SDK",
"state": "merged",
"additions": 575,
"deletions": 1086,
"createdAt": "2025-10-07T13:55:37Z",
"mergedAt": "2026-02-05T21:27:38Z"
},
{
"url": "https://github.com/workos/cli/pull/41",
"repo": "workos/cli",
"number": 41,
"title": "feat: secure keyring credential storage",
"state": "merged",
"additions": 679,
"deletions": 115,
"createdAt": "2026-02-04T15:26:51Z",
"mergedAt": "2026-02-04T16:32:18Z"
},
{
"url": "https://github.com/workos/cli/pull/35",
"repo": "workos/cli",
"number": 35,
"title": "feat: add startup version check to warn users of outdated CLI",
"state": "merged",
"additions": 173,
"deletions": 0,
"createdAt": "2026-01-31T14:00:15Z",
"mergedAt": "2026-02-02T13:36:37Z"
},
{
"url": "https://github.com/workos/cli/pull/39",
"repo": "workos/cli",
"number": 39,
"title": "fix(nextjs): improve skill guidance for middleware composition",
"state": "merged",
"additions": 94,
"deletions": 17,
"createdAt": "2026-02-03T22:55:55Z",
"mergedAt": "2026-02-03T22:59:26Z"
},
{
"url": "https://github.com/workos/authkit-sveltekit/pull/8",
"repo": "workos/authkit-sveltekit",
"number": 8,
"title": "release: v0.1.0",
"state": "merged",
"additions": 10,
"deletions": 7,
"createdAt": "2026-02-04T20:46:47Z",
"mergedAt": "2026-02-04T21:21:29Z"
},
{
"url": "https://github.com/nicknisi/kith/pull/1",
"repo": "nicknisi/kith",
"number": 1,
"title": "Fix script src to use GitHub Pages static asset instead of unpkg",
"state": "merged",
"additions": 2,
"deletions": 2,
"createdAt": "2026-02-07T21:15:06Z",
"mergedAt": "2026-02-07T21:15:51Z"
}
],
"summary": "Work centered on `workos/cli`, where an eval framework landed in `cli#36`, followed by quality grading, latency tracking, and edge case fixtures in `cli#40`, and secure keyring credential storage in `cli#41`. `workos/authkit-sveltekit` saw a session library upgrade and example app addition in `authkit-sveltekit#6`, culminating in the `v0.1.0` release in `authkit-sveltekit#8`, while `TanStack/router#5394` updated the WorkOS example to the new AuthKit SDK. Middleware composition guidance for the NextJS installer agent was iterated across `cli#38` and `cli#39`, reflecting ongoing refinement of the AI agent's skill prompts alongside heavy session activity in `authkit-nextjs` and `skills`."
},
{
"weekEnding": "2026-02-01",
"pullRequests": [
{
"url": "https://github.com/nicknisi/test-next-app/pull/5",
"repo": "nicknisi/test-next-app",
"number": 5,
"title": "feat: integrate WorkOS AuthKit for authentication in Next.js app",
"state": "closed",
"additions": 7078,
"deletions": 36,
"createdAt": "2026-01-31T02:58:18Z",
"mergedAt": null
},
{
"url": "https://github.com/nicknisi/test-next-app/pull/4",
"repo": "nicknisi/test-next-app",
"number": 4,
"title": "feat: integrate WorkOS AuthKit authentication system",
"state": "closed",
"additions": 7077,
"deletions": 22,
"createdAt": "2026-01-31T02:48:58Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/cli/pull/20",
"repo": "workos/cli",
"number": 20,
"title": "feat: auto-fetch WorkOS credentials via device auth",
"state": "merged",
"additions": 1386,
"deletions": 64,
"createdAt": "2026-01-25T02:10:38Z",
"mergedAt": "2026-01-27T23:33:33Z"
},
{
"url": "https://github.com/workos/cli/pull/21",
"repo": "workos/cli",
"number": 21,
"title": "feat: auto-commit and PR creation after wizard completion",
"state": "merged",
"additions": 983,
"deletions": 122,
"createdAt": "2026-01-28T00:20:10Z",
"mergedAt": "2026-01-28T22:28:48Z"
},
{
"url": "https://github.com/workos/cli/pull/26",
"repo": "workos/cli",
"number": 26,
"title": "refactor!: rename Wizard to Installer",
"state": "merged",
"additions": 486,
"deletions": 470,
"createdAt": "2026-01-30T22:55:38Z",
"mergedAt": "2026-01-30T22:56:34Z"
},
{
"url": "https://github.com/workos/cli/pull/23",
"repo": "workos/cli",
"number": 23,
"title": "feat: add credential proxy with token refresh for extended sessions",
"state": "merged",
"additions": 859,
"deletions": 33,
"createdAt": "2026-01-29T21:46:25Z",
"mergedAt": "2026-01-30T17:18:16Z"
},
{
"url": "https://github.com/workos/cli/pull/25",
"repo": "workos/cli",
"number": 25,
"title": "Add CI/release workflows and modernize ESM imports",
"state": "merged",
"additions": 589,
"deletions": 120,
"createdAt": "2026-01-30T22:53:11Z",
"mergedAt": "2026-01-31T03:13:21Z"
},
{
"url": "https://github.com/nicknisi/test-next-app/pull/1",
"repo": "nicknisi/test-next-app",
"number": 1,
"title": "feat: integrate WorkOS AuthKit authentication for Next.js app",
"state": "closed",
"additions": 429,
"deletions": 36,
"createdAt": "2026-01-28T00:17:30Z",
"mergedAt": null
},
{
"url": "https://github.com/nicknisi/test-next-app/pull/2",
"repo": "nicknisi/test-next-app",
"number": 2,
"title": "feat: integrate WorkOS AuthKit authentication system",
"state": "merged",
"additions": 420,
"deletions": 36,
"createdAt": "2026-01-30T15:54:55Z",
"mergedAt": "2026-01-30T17:03:29Z"
},
{
"url": "https://github.com/nicknisi/test-next-app/pull/3",
"repo": "nicknisi/test-next-app",
"number": 3,
"title": "feat: integrate WorkOS AuthKit authentication system",
"state": "closed",
"additions": 413,
"deletions": 34,
"createdAt": "2026-01-30T22:49:28Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/cli/pull/24",
"repo": "workos/cli",
"number": 24,
"title": "feat: add startup auth guard with automatic token refresh",
"state": "merged",
"additions": 392,
"deletions": 23,
"createdAt": "2026-01-30T20:39:14Z",
"mergedAt": "2026-01-30T20:47:10Z"
},
{
"url": "https://github.com/workos/cli/pull/22",
"repo": "workos/cli",
"number": 22,
"title": "feat: add --direct flag to bypass llm-gateway",
"state": "merged",
"additions": 70,
"deletions": 52,
"createdAt": "2026-01-29T19:45:42Z",
"mergedAt": "2026-01-29T19:46:42Z"
},
{
"url": "https://github.com/workos/cli/pull/27",
"repo": "workos/cli",
"number": 27,
"title": "feat: add release-please for automated releases",
"state": "merged",
"additions": 38,
"deletions": 0,
"createdAt": "2026-01-31T03:21:27Z",
"mergedAt": "2026-01-31T03:22:08Z"
},
{
"url": "https://github.com/workos/cli/pull/29",
"repo": "workos/cli",
"number": 29,
"title": "docs: update documentation for recent changes",
"state": "merged",
"additions": 29,
"deletions": 7,
"createdAt": "2026-01-31T03:31:17Z",
"mergedAt": "2026-01-31T03:32:04Z"
},
{
"url": "https://github.com/workos/cli/pull/31",
"repo": "workos/cli",
"number": 31,
"title": "fix: trigger npm publish when release-please creates a release",
"state": "merged",
"additions": 6,
"deletions": 0,
"createdAt": "2026-01-31T03:44:33Z",
"mergedAt": "2026-01-31T03:45:12Z"
},
{
"url": "https://github.com/workos/cli/pull/33",
"repo": "workos/cli",
"number": 33,
"title": "fix: add repository URL for npm provenance publishing",
"state": "merged",
"additions": 5,
"deletions": 0,
"createdAt": "2026-01-31T03:54:32Z",
"mergedAt": "2026-01-31T03:55:07Z"
},
{
"url": "https://github.com/workos/cli/pull/30",
"repo": "workos/cli",
"number": 30,
"title": "fix: use v0.x.x tag format instead of workos-v0.x.x",
"state": "merged",
"additions": 1,
"deletions": 0,
"createdAt": "2026-01-31T03:37:31Z",
"mergedAt": "2026-01-31T03:38:12Z"
}
],
"summary": "Work on `workos/cli` dominated the week, with a cluster of merged PRs building out a full authentication lifecycle: device-auth credential fetching (`#20`), a credential proxy with token refresh (`#23`), a startup auth guard (`#24`), and a `--direct` flag to bypass the LLM gateway (`#22`). The installer flow was also restructured (`#26`, `#21`) and shipping infrastructure was added via release-please automation (`#27`, `#30`, `#31`, `#33`). Parallel work explored WorkOS AuthKit integration in `nicknisi/test-next-app` across several iterations (`#1`–`#5`), with `#2` the only merged result, alongside heavier session work against internal projects and `workos-node`."
},
{
"weekEnding": "2026-01-25",
"pullRequests": [
{
"url": "https://github.com/workos/cli/pull/9",
"repo": "workos/cli",
"number": 9,
"title": "chore: update dependencies and remove ESLint",
"state": "merged",
"additions": 444,
"deletions": 4476,
"createdAt": "2026-01-20T22:43:36Z",
"mergedAt": "2026-01-20T22:43:45Z"
},
{
"url": "https://github.com/workos/cli/pull/7",
"repo": "workos/cli",
"number": 7,
"title": "fix: run prettier from root to respect .prettierignore",
"state": "merged",
"additions": 2543,
"deletions": 469,
"createdAt": "2026-01-20T02:13:49Z",
"mergedAt": "2026-01-20T02:15:42Z"
},
{
"url": "https://github.com/workos/cli/pull/13",
"repo": "workos/cli",
"number": 13,
"title": "refactor: flatten monorepo and remove llm-gateway",
"state": "merged",
"additions": 535,
"deletions": 1793,
"createdAt": "2026-01-22T01:12:54Z",
"mergedAt": "2026-01-22T01:24:00Z"
},
{
"url": "https://github.com/workos/cli/pull/8",
"repo": "workos/cli",
"number": 8,
"title": "feat: add OpenTelemetry telemetry for wizard sessions",
"state": "merged",
"additions": 2046,
"deletions": 39,
"createdAt": "2026-01-20T21:58:36Z",
"mergedAt": "2026-01-20T22:02:12Z"
},
{
"url": "https://github.com/workos/cli/pull/12",
"repo": "workos/cli",
"number": 12,
"title": "feat: add post-installation validation for wizard",
"state": "merged",
"additions": 1826,
"deletions": 2,
"createdAt": "2026-01-21T19:59:43Z",
"mergedAt": "2026-01-21T20:08:09Z"
},
{
"url": "https://github.com/workos/cli/pull/17",
"repo": "workos/cli",
"number": 17,
"title": "fix: correct SDK APIs and make README fetch blocking",
"state": "merged",
"additions": 635,
"deletions": 374,
"createdAt": "2026-01-23T22:29:06Z",
"mergedAt": "2026-01-23T23:43:00Z"
},
{
"url": "https://github.com/workos/cli/pull/15",
"repo": "workos/cli",
"number": 15,
"title": "feat: CLI UI redesign - cleaner output and simplified flags",
"state": "merged",
"additions": 595,
"deletions": 234,
"createdAt": "2026-01-23T18:08:23Z",
"mergedAt": "2026-01-23T19:53:20Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/362",
"repo": "workos/authkit-nextjs",
"number": 362,
"title": "feat: add embedded documentation generation for AI agents",
"state": "closed",
"additions": 581,
"deletions": 0,
"createdAt": "2026-01-21T12:27:22Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/48",
"repo": "workos/authkit-tanstack-start",
"number": 48,
"title": "chore(deps): update TanStack dependencies to 1.154.8",
"state": "merged",
"additions": 149,
"deletions": 349,
"createdAt": "2026-01-22T16:50:12Z",
"mergedAt": "2026-01-22T18:09:02Z"
},
{
"url": "https://github.com/workos/cli/pull/16",
"repo": "workos/cli",
"number": 16,
"title": "feat: improve debug logging with session-based log files",
"state": "merged",
"additions": 241,
"deletions": 84,
"createdAt": "2026-01-23T20:29:52Z",
"mergedAt": "2026-01-23T20:31:59Z"
},
{
"url": "https://github.com/nicknisi/claude-plugins/pull/1",
"repo": "nicknisi/claude-plugins",
"number": 1,
"title": "feat(ideation): upgrade to Tasks system for cross-session coordination",
"state": "merged",
"additions": 261,
"deletions": 37,
"createdAt": "2026-01-23T15:29:45Z",
"mergedAt": "2026-01-23T15:32:00Z"
},
{
"url": "https://github.com/workos/cli/pull/10",
"repo": "workos/cli",
"number": 10,
"title": "feat: migrate CLI auth from User Management to Connect OAuth",
"state": "merged",
"additions": 149,
"deletions": 81,
"createdAt": "2026-01-20T23:39:37Z",
"mergedAt": "2026-01-21T00:17:03Z"
},
{
"url": "https://github.com/workos/cli/pull/14",
"repo": "workos/cli",
"number": 14,
"title": "refactor: simplify settings config and improve local dev workflow",
"state": "merged",
"additions": 93,
"deletions": 106,
"createdAt": "2026-01-22T23:38:39Z",
"mergedAt": "2026-01-22T23:39:06Z"
},
{
"url": "https://github.com/workos/cli/pull/18",
"repo": "workos/cli",
"number": 18,
"title": "feat: add install subcommand and CLI restructure",
"state": "merged",
"additions": 113,
"deletions": 73,
"createdAt": "2026-01-23T23:07:17Z",
"mergedAt": "2026-01-23T23:07:36Z"
},
{
"url": "https://github.com/nicknisi/claude-plugins/pull/2",
"repo": "nicknisi/claude-plugins",
"number": 2,
"title": "feat(ideation): add auto-detect and --parallel flag",
"state": "merged",
"additions": 127,
"deletions": 42,
"createdAt": "2026-01-23T15:59:49Z",
"mergedAt": "2026-01-23T16:01:12Z"
},
{
"url": "https://github.com/workos/cli/pull/19",
"repo": "workos/cli",
"number": 19,
"title": "chore: rename package to workos CLI",
"state": "merged",
"additions": 59,
"deletions": 73,
"createdAt": "2026-01-23T23:51:55Z",
"mergedAt": "2026-01-23T23:52:14Z"
},
{
"url": "https://github.com/workos/cli/pull/11",
"repo": "workos/cli",
"number": 11,
"title": "feat(llm-gateway): add OTel metrics for token usage tracking",
"state": "merged",
"additions": 39,
"deletions": 4,
"createdAt": "2026-01-21T00:52:59Z",
"mergedAt": "2026-01-21T00:53:29Z"
},
{
"url": "https://github.com/workos/electron-authkit-example/pull/2",
"repo": "workos/electron-authkit-example",
"number": 2,
"title": "Use safeStorage for session encryption, simplify env config",
"state": "merged",
"additions": 7,
"deletions": 14,
"createdAt": "2026-01-20T14:32:48Z",
"mergedAt": "2026-01-20T16:04:58Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/49",
"repo": "workos/authkit-tanstack-start",
"number": 49,
"title": "docs: fix package name references in documentation",
"state": "merged",
"additions": 9,
"deletions": 9,
"createdAt": "2026-01-23T23:37:23Z",
"mergedAt": "2026-01-23T23:41:25Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/355",
"repo": "workos/authkit-nextjs",
"number": 355,
"title": "docs: add warning about catch-all middleware matcher breaking styles",
"state": "merged",
"additions": 9,
"deletions": 2,
"createdAt": "2026-01-06T23:34:37Z",
"mergedAt": "2026-01-20T20:06:32Z"
}
],
"summary": "Work centered on `workos/cli`, with a cluster of PRs restructuring the project: `cli#13` flattened the monorepo and removed the llm-gateway, `cli#12` added post-installation validation for the wizard, `cli#18` introduced an `install` subcommand with broader CLI restructuring, and `cli#19` renamed the package. On the auth side, `authkit-nextjs#362` (closed) attempted to add embedded documentation generation for AI agents, while `authkit-nextjs#355` and `authkit-tanstack-start#49` landed small documentation fixes across the Next.js and TanStack Start integrations."
},
{
"weekEnding": "2026-01-18",
"pullRequests": [
{
"url": "https://github.com/workos/workos-node/pull/1370",
"repo": "workos/workos-node",
"number": 1370,
"title": "Release v8.0.0: Universal Runtime Support & API Modernization",
"state": "merged",
"additions": 13803,
"deletions": 5991,
"createdAt": "2025-10-13T17:50:30Z",
"mergedAt": "2026-01-12T16:47:20Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/360",
"repo": "workos/authkit-nextjs",
"number": 360,
"title": "chore: switch from npm to pnpm",
"state": "merged",
"additions": 5465,
"deletions": 8197,
"createdAt": "2026-01-10T16:31:00Z",
"mergedAt": "2026-01-14T23:16:34Z"
},
{
"url": "https://github.com/workos/cli/pull/3",
"repo": "workos/cli",
"number": 3,
"title": "feat(agent): implement agent-skill architecture (Phases 1-3)",
"state": "merged",
"additions": 1594,
"deletions": 159,
"createdAt": "2026-01-17T03:34:13Z",
"mergedAt": "2026-01-17T04:01:16Z"
},
{
"url": "https://github.com/workos/cli/pull/5",
"repo": "workos/cli",
"number": 5,
"title": "feat: CLI authentication with WorkOS",
"state": "merged",
"additions": 1647,
"deletions": 35,
"createdAt": "2026-01-17T20:44:24Z",
"mergedAt": "2026-01-17T20:45:45Z"
},
{
"url": "https://github.com/workos/cli/pull/4",
"repo": "workos/cli",
"number": 4,
"title": "refactor(cli): centralize settings and modernize ESM module system",
"state": "merged",
"additions": 377,
"deletions": 392,
"createdAt": "2026-01-17T16:02:18Z",
"mergedAt": "2026-01-17T16:03:29Z"
},
{
"url": "https://github.com/workos/cli/pull/6",
"repo": "workos/cli",
"number": 6,
"title": "feat(cli): add install-skill command",
"state": "merged",
"additions": 412,
"deletions": 0,
"createdAt": "2026-01-19T03:48:40Z",
"mergedAt": "2026-01-19T03:52:16Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/16",
"repo": "workos/authkit-session",
"number": 16,
"title": "Update dependencies to stable versions",
"state": "merged",
"additions": 91,
"deletions": 121,
"createdAt": "2026-01-12T18:45:22Z",
"mergedAt": "2026-01-12T19:17:02Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1449",
"repo": "workos/workos-node",
"number": 1449,
"title": "docs: fix inconsistencies in V8 migration guide",
"state": "merged",
"additions": 67,
"deletions": 32,
"createdAt": "2026-01-12T21:12:20Z",
"mergedAt": "2026-01-12T21:14:41Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/47",
"repo": "workos/authkit-tanstack-start",
"number": 47,
"title": "v0.5.0",
"state": "merged",
"additions": 12,
"deletions": 11,
"createdAt": "2026-01-16T19:18:05Z",
"mergedAt": "2026-01-16T19:19:48Z"
},
{
"url": "https://github.com/workos/authkit-react/pull/84",
"repo": "workos/authkit-react",
"number": 84,
"title": "fix: release 0.15.1 with correct build artifacts",
"state": "merged",
"additions": 4,
"deletions": 4,
"createdAt": "2026-01-13T15:21:52Z",
"mergedAt": "2026-01-13T17:03:50Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1446",
"repo": "workos/workos-node",
"number": 1446,
"title": "v8.0.0",
"state": "merged",
"additions": 4,
"deletions": 4,
"createdAt": "2026-01-12T16:51:04Z",
"mergedAt": "2026-01-12T17:34:40Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/18",
"repo": "workos/authkit-session",
"number": 18,
"title": "v0.3.4",
"state": "merged",
"additions": 5,
"deletions": 1,
"createdAt": "2026-01-12T19:23:27Z",
"mergedAt": "2026-01-12T19:25:02Z"
},
{
"url": "https://github.com/workos/workos-python/pull/518",
"repo": "workos/workos-python",
"number": 518,
"title": "v5.39.0",
"state": "merged",
"additions": 2,
"deletions": 2,
"createdAt": "2026-01-15T15:42:00Z",
"mergedAt": "2026-01-15T15:57:40Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/17",
"repo": "workos/authkit-session",
"number": 17,
"title": "v0.3.3",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2026-01-12T19:18:44Z",
"mergedAt": "2026-01-12T19:19:33Z"
}
],
"summary": "A heavily active week centered on the `workos/workos-node` v8.0.0 release (`#1370`, `#1446`), a large overhaul adding universal runtime support and modernizing the API surface, alongside a run of `workos/cli` PRs (`#3`, `#4`, `#5`, `#6`) that stood up a new agent-skill architecture, CLI authentication, and an `install-skill` command from scratch. Package maintenance and tooling changes rounded things out with `workos/authkit-nextjs#360` migrating to pnpm, a `workos/authkit-tanstack-start#47` patch release, a build artifact fix in `workos/authkit-react#84`, and a version bump in `workos/workos-python#518`."
},
{
"weekEnding": "2026-01-11",
"pullRequests": [
{
"url": "https://github.com/workos/workos-node/pull/1439",
"repo": "workos/workos-node",
"number": 1439,
"title": "chore: formatting cleanup and dependency pruning [v8]",
"state": "merged",
"additions": 998,
"deletions": 1821,
"createdAt": "2026-01-08T14:58:24Z",
"mergedAt": "2026-01-08T16:28:08Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1435",
"repo": "workos/workos-node",
"number": 1435,
"title": "[v8] feat: add PKCE support for public clients; remove /client entry point",
"state": "merged",
"additions": 1838,
"deletions": 820,
"createdAt": "2026-01-05T20:31:59Z",
"mergedAt": "2026-01-07T21:59:39Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/348",
"repo": "workos/authkit-nextjs",
"number": 348,
"title": "feat: add composable proxy/middleware helpers",
"state": "merged",
"additions": 519,
"deletions": 119,
"createdAt": "2025-12-22T16:10:58Z",
"mergedAt": "2026-01-06T22:37:30Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1440",
"repo": "workos/workos-node",
"number": 1440,
"title": "feat: add createWorkOS factory for type-safe public/confidential clients [v8]",
"state": "merged",
"additions": 296,
"deletions": 0,
"createdAt": "2026-01-08T17:17:32Z",
"mergedAt": "2026-01-08T20:03:46Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/29",
"repo": "workos/authkit-tanstack-start",
"number": 29,
"title": "feat: add redirectUri option to middleware",
"state": "merged",
"additions": 130,
"deletions": 5,
"createdAt": "2025-12-15T21:02:15Z",
"mergedAt": "2026-01-09T16:22:58Z"
},
{
"url": "https://github.com/workos/authkit-js/pull/104",
"repo": "workos/authkit-js",
"number": 104,
"title": "fix: handle signOut() when no session exists",
"state": "merged",
"additions": 76,
"deletions": 6,
"createdAt": "2026-01-02T16:37:39Z",
"mergedAt": "2026-01-08T15:14:31Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1441",
"repo": "workos/workos-node",
"number": 1441,
"title": "fix: split ESM/CJS builds to fix Electron bundling issue",
"state": "merged",
"additions": 35,
"deletions": 23,
"createdAt": "2026-01-09T15:10:30Z",
"mergedAt": "2026-01-09T16:50:41Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/358",
"repo": "workos/authkit-nextjs",
"number": 358,
"title": "v2.13.0",
"state": "merged",
"additions": 20,
"deletions": 15,
"createdAt": "2026-01-07T17:23:59Z",
"mergedAt": "2026-01-07T17:40:40Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1443",
"repo": "workos/workos-node",
"number": 1443,
"title": "v7.82.0",
"state": "merged",
"additions": 10,
"deletions": 6,
"createdAt": "2026-01-09T22:02:57Z",
"mergedAt": "2026-01-09T22:14:37Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/354",
"repo": "workos/authkit-nextjs",
"number": 354,
"title": "fix: avoid calling headers() in middleware context",
"state": "merged",
"additions": 6,
"deletions": 10,
"createdAt": "2026-01-06T23:12:11Z",
"mergedAt": "2026-01-06T23:52:31Z"
},
{
"url": "https://github.com/workos/authkit-js/pull/106",
"repo": "workos/authkit-js",
"number": 106,
"title": "v0.18.0",
"state": "merged",
"additions": 10,
"deletions": 3,
"createdAt": "2026-01-08T15:18:33Z",
"mergedAt": "2026-01-08T16:49:30Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1442",
"repo": "workos/workos-node",
"number": 1442,
"title": "Add context field to Event interface",
"state": "merged",
"additions": 10,
"deletions": 0,
"createdAt": "2026-01-09T21:46:51Z",
"mergedAt": "2026-01-09T22:12:04Z"
}
],
"summary": "A busy week centered on `workos/workos-node` v8 work: `#1435` added PKCE support for public clients and removed the `/client` entry point, `#1440` introduced a `createWorkOS` factory for type-safe public/confidential client differentiation, and `#1441` split ESM/CJS builds to fix an Electron bundling issue. Auth middleware and session handling saw attention across the ecosystem, with `workos/authkit-nextjs#348` adding composable proxy/middleware helpers, `#354` fixing a `headers()` call in middleware context, `workos/authkit-tanstack-start#29` adding a `redirectUri` option to middleware, and `workos/authkit-js#104` patching `signOut()` when no session exists."
},
{
"weekEnding": "2025-12-28",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-nextjs/pull/349",
"repo": "workos/authkit-nextjs",
"number": 349,
"title": "feat: add TokenRefreshError with userId and sessionId for debugging",
"state": "merged",
"additions": 163,
"deletions": 3,
"createdAt": "2025-12-23T21:11:32Z",
"mergedAt": "2025-12-23T23:23:14Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1423",
"repo": "workos/workos-node",
"number": 1423,
"title": "[v8] fix: bundle ESM-only deps for CJS compatibility",
"state": "merged",
"additions": 2,
"deletions": 0,
"createdAt": "2025-12-22T20:51:12Z",
"mergedAt": "2025-12-22T21:07:45Z"
}
],
"summary": "Work centered on the `workos/authkit-nextjs` and `workos/workos-node` SDKs. `workos/authkit-nextjs#349` introduced a `TokenRefreshError` class carrying `userId` and `sessionId` to aid debugging of token refresh failures, and `workos/workos-node#1423` patched the v8 build to bundle ESM-only dependencies for CommonJS compatibility."
},
{
"weekEnding": "2025-12-21",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/28",
"repo": "workos/authkit-tanstack-start",
"number": 28,
"title": "Update package dependencies",
"state": "merged",
"additions": 852,
"deletions": 1115,
"createdAt": "2025-12-15T16:08:31Z",
"mergedAt": "2025-12-15T20:37:39Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1416",
"repo": "workos/workos-node",
"number": 1416,
"title": "[v8] Replace iron-session with iron-webcrypto v2",
"state": "merged",
"additions": 226,
"deletions": 42,
"createdAt": "2025-12-12T23:23:08Z",
"mergedAt": "2025-12-15T15:25:44Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/31",
"repo": "workos/authkit-tanstack-start",
"number": 31,
"title": "fix: prevent CORS errors when calling signOut from useAuth hook",
"state": "merged",
"additions": 91,
"deletions": 74,
"createdAt": "2025-12-16T18:26:06Z",
"mergedAt": "2025-12-16T19:28:52Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/36",
"repo": "workos/authkit-tanstack-start",
"number": 36,
"title": "feat: pass all options through getSignInUrl and getSignUpUrl",
"state": "merged",
"additions": 104,
"deletions": 22,
"createdAt": "2025-12-18T16:46:31Z",
"mergedAt": "2025-12-18T18:25:05Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/41",
"repo": "workos/authkit-tanstack-start",
"number": 41,
"title": "feat: use reusable workflows from workos/workflows",
"state": "closed",
"additions": 10,
"deletions": 74,
"createdAt": "2025-12-19T15:10:26Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-session/pull/12",
"repo": "workos/authkit-session",
"number": 12,
"title": "Upgrade iron-webcrypto to v2.0.0",
"state": "merged",
"additions": 27,
"deletions": 49,
"createdAt": "2025-12-15T15:42:41Z",
"mergedAt": "2025-12-15T16:49:57Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/27",
"repo": "workos/authkit-tanstack-start",
"number": 27,
"title": "fix: remove unused ensureSignedIn parameter from server actions",
"state": "merged",
"additions": 10,
"deletions": 12,
"createdAt": "2025-12-10T20:47:47Z",
"mergedAt": "2025-12-15T20:37:54Z"
},
{
"url": "https://github.com/workos/authkit-sveltekit/pull/2",
"repo": "workos/authkit-sveltekit",
"number": 2,
"title": "feat: enable npm Trusted Publishers",
"state": "merged",
"additions": 7,
"deletions": 8,
"createdAt": "2025-12-19T15:42:34Z",
"mergedAt": "2025-12-19T16:29:13Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/34",
"repo": "workos/authkit-tanstack-start",
"number": 34,
"title": "fix types in tests",
"state": "merged",
"additions": 7,
"deletions": 7,
"createdAt": "2025-12-17T16:32:13Z",
"mergedAt": "2025-12-17T23:14:22Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1422",
"repo": "workos/workos-node",
"number": 1422,
"title": "feat: enable npm Trusted Publishers",
"state": "merged",
"additions": 6,
"deletions": 7,
"createdAt": "2025-12-19T15:47:07Z",
"mergedAt": "2025-12-19T16:09:38Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/15",
"repo": "workos/authkit-session",
"number": 15,
"title": "feat: enable npm Trusted Publishers",
"state": "merged",
"additions": 6,
"deletions": 7,
"createdAt": "2025-12-19T15:46:32Z",
"mergedAt": "2025-12-19T16:32:33Z"
},
{
"url": "https://github.com/workos/authkit-react/pull/79",
"repo": "workos/authkit-react",
"number": 79,
"title": "feat: enable npm Trusted Publishers",
"state": "merged",
"additions": 6,
"deletions": 7,
"createdAt": "2025-12-19T15:46:08Z",
"mergedAt": "2025-12-19T16:36:04Z"
},
{
"url": "https://github.com/workos/authkit-js/pull/101",
"repo": "workos/authkit-js",
"number": 101,
"title": "feat: enable npm Trusted Publishers",
"state": "merged",
"additions": 6,
"deletions": 7,
"createdAt": "2025-12-19T15:45:36Z",
"mergedAt": "2025-12-19T16:37:02Z"
},
{
"url": "https://github.com/workos/authkit-remix/pull/85",
"repo": "workos/authkit-remix",
"number": 85,
"title": "feat: enable npm Trusted Publishers",
"state": "merged",
"additions": 6,
"deletions": 7,
"createdAt": "2025-12-19T15:44:47Z",
"mergedAt": "2025-12-19T16:41:05Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/346",
"repo": "workos/authkit-nextjs",
"number": 346,
"title": "feat: enable npm Trusted Publishers",
"state": "merged",
"additions": 6,
"deletions": 7,
"createdAt": "2025-12-19T15:43:07Z",
"mergedAt": "2025-12-19T15:59:33Z"
},
{
"url": "https://github.com/workos/authkit-react-router/pull/56",
"repo": "workos/authkit-react-router",
"number": 56,
"title": "feat: enable npm Trusted Publishers",
"state": "merged",
"additions": 5,
"deletions": 6,
"createdAt": "2025-12-19T15:48:04Z",
"mergedAt": "2025-12-19T16:31:38Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/37",
"repo": "workos/authkit-tanstack-start",
"number": 37,
"title": "feat: use npm Trusted Publishers for releases",
"state": "merged",
"additions": 5,
"deletions": 6,
"createdAt": "2025-12-18T17:43:18Z",
"mergedAt": "2025-12-18T18:24:45Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1421",
"repo": "workos/workos-node",
"number": 1421,
"title": "add context7.json to repo",
"state": "merged",
"additions": 6,
"deletions": 2,
"createdAt": "2025-12-17T15:38:44Z",
"mergedAt": "2025-12-17T15:41:12Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1419",
"repo": "workos/workos-node",
"number": 1419,
"title": "8.0.0-rc.6",
"state": "merged",
"additions": 4,
"deletions": 4,
"createdAt": "2025-12-16T01:13:39Z",
"mergedAt": "2025-12-16T01:16:12Z"
},
{
"url": "https://github.com/workos/authkit-remix/pull/84",
"repo": "workos/authkit-remix",
"number": 84,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 5,
"deletions": 0,
"createdAt": "2025-12-17T21:18:17Z",
"mergedAt": "2025-12-17T21:28:30Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/39",
"repo": "workos/authkit-tanstack-start",
"number": 39,
"title": "fix: use Node 24 for npm 11+ (required by Trusted Publishers)",
"state": "merged",
"additions": 2,
"deletions": 2,
"createdAt": "2025-12-18T18:52:43Z",
"mergedAt": "2025-12-18T19:05:29Z"
},
{
"url": "https://github.com/workos/workos-ruby/pull/413",
"repo": "workos/workos-ruby",
"number": 413,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T21:15:31Z",
"mergedAt": "2025-12-17T21:47:12Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/14",
"repo": "workos/authkit-session",
"number": 14,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T21:06:38Z",
"mergedAt": "2025-12-17T21:47:02Z"
},
{
"url": "https://github.com/radix-ui/primitives/pull/3781",
"repo": "radix-ui/primitives",
"number": 3781,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T20:37:48Z",
"mergedAt": "2025-12-17T20:45:51Z"
},
{
"url": "https://github.com/radix-ui/colors/pull/69",
"repo": "radix-ui/colors",
"number": 69,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T20:37:01Z",
"mergedAt": "2025-12-17T20:46:00Z"
},
{
"url": "https://github.com/radix-ui/themes/pull/769",
"repo": "radix-ui/themes",
"number": 769,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T20:36:10Z",
"mergedAt": "2025-12-17T20:46:12Z"
},
{
"url": "https://github.com/radix-ui/icons/pull/206",
"repo": "radix-ui/icons",
"number": 206,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T20:35:15Z",
"mergedAt": "2025-12-17T20:46:29Z"
},
{
"url": "https://github.com/radix-ui/website/pull/891",
"repo": "radix-ui/website",
"number": 891,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T20:33:31Z",
"mergedAt": "2025-12-17T20:46:20Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/35",
"repo": "workos/authkit-tanstack-start",
"number": 35,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T16:32:32Z",
"mergedAt": "2025-12-17T17:30:37Z"
},
{
"url": "https://github.com/workos/authkit-react-router/pull/55",
"repo": "workos/authkit-react-router",
"number": 55,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T16:30:09Z",
"mergedAt": "2025-12-17T17:30:57Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/345",
"repo": "workos/authkit-nextjs",
"number": 345,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T16:29:04Z",
"mergedAt": "2025-12-17T16:36:49Z"
},
{
"url": "https://github.com/workos/authkit/pull/64",
"repo": "workos/authkit",
"number": 64,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T16:28:19Z",
"mergedAt": "2025-12-17T17:31:02Z"
},
{
"url": "https://github.com/workos/workos-php-laravel/pull/70",
"repo": "workos/workos-php-laravel",
"number": 70,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T16:27:23Z",
"mergedAt": "2025-12-17T16:38:04Z"
},
{
"url": "https://github.com/workos/workos-python/pull/504",
"repo": "workos/workos-python",
"number": 504,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T16:25:40Z",
"mergedAt": "2025-12-17T16:37:43Z"
},
{
"url": "https://github.com/workos/workos-go/pull/483",
"repo": "workos/workos-go",
"number": 483,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T16:24:55Z",
"mergedAt": "2025-12-17T16:38:46Z"
},
{
"url": "https://github.com/workos/workos-php/pull/314",
"repo": "workos/workos-php",
"number": 314,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T16:24:07Z",
"mergedAt": "2025-12-17T16:37:22Z"
},
{
"url": "https://github.com/workos/workos-cli/pull/23",
"repo": "workos/workos-cli",
"number": 23,
"title": "Add context7.json to repo",
"state": "merged",
"additions": 4,
"deletions": 0,
"createdAt": "2025-12-17T16:22:34Z",
"mergedAt": "2025-12-17T17:31:13Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/38",
"repo": "workos/authkit-tanstack-start",
"number": 38,
"title": "v0.4.0",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-12-18T18:27:28Z",
"mergedAt": "2025-12-18T18:34:49Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/32",
"repo": "workos/authkit-tanstack-start",
"number": 32,
"title": "v0.3.1",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-12-16T18:35:58Z",
"mergedAt": "2025-12-16T19:30:19Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/30",
"repo": "workos/authkit-tanstack-start",
"number": 30,
"title": "Release v0.3.0",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-12-15T21:12:36Z",
"mergedAt": "2025-12-16T01:29:16Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/13",
"repo": "workos/authkit-session",
"number": 13,
"title": "v0.3.2",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-12-15T18:43:37Z",
"mergedAt": "2025-12-15T18:46:18Z"
}
],
"summary": "A `context7.json` metadata file was seeded across the full WorkOS and Radix UI SDK ecosystem — covering repos spanning Node, Ruby, Python, Go, PHP, React, Remix, Svelte, and more. Substantive work landed in `workos/authkit-tanstack-start`, with fixes for CORS errors on sign-out (`#31`), removal of an unused `ensureSignedIn` parameter (`#27`), type corrections in tests (`#34`), and a new feature passing all options through `getSignInUrl`/`getSignUpUrl` (`#36`), along with releases `#30`, `#32`, and `#38`. npm Trusted Publishers was enabled across the full authkit SDK suite and `workos/workos-node#1422`, standardizing the release pipeline."
},
{
"weekEnding": "2025-12-14",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/26",
"repo": "workos/authkit-tanstack-start",
"number": 26,
"title": "Fix client bundling and upgrade authkit-session to 0.3.0",
"state": "merged",
"additions": 3434,
"deletions": 2204,
"createdAt": "2025-12-03T15:04:36Z",
"mergedAt": "2025-12-10T19:22:56Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/344",
"repo": "workos/authkit-nextjs",
"number": 344,
"title": "v2.12.2",
"state": "merged",
"additions": 476,
"deletions": 453,
"createdAt": "2025-12-12T22:22:23Z",
"mergedAt": "2025-12-12T22:45:35Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/10",
"repo": "workos/authkit-session",
"number": 10,
"title": "Remove redundant encryption implementations",
"state": "merged",
"additions": 8,
"deletions": 596,
"createdAt": "2025-12-12T16:38:35Z",
"mergedAt": "2025-12-12T19:28:18Z"
},
{
"url": "https://github.com/workos/next-b2b-starter-kit/pull/15",
"repo": "workos/next-b2b-starter-kit",
"number": 15,
"title": "fix: bump Next.js dev dependency to patched version",
"state": "merged",
"additions": 230,
"deletions": 217,
"createdAt": "2025-12-11T23:25:18Z",
"mergedAt": "2025-12-11T23:40:04Z"
},
{
"url": "https://github.com/workos/next-authkit-example/pull/44",
"repo": "workos/next-authkit-example",
"number": 44,
"title": "Upgrade Next.js and React versions",
"state": "merged",
"additions": 52,
"deletions": 52,
"createdAt": "2025-12-11T22:42:56Z",
"mergedAt": "2025-12-11T23:37:52Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/341",
"repo": "workos/authkit-nextjs",
"number": 341,
"title": "fix: bump Next.js dev dependency to patched version",
"state": "merged",
"additions": 41,
"deletions": 41,
"createdAt": "2025-12-11T22:42:06Z",
"mergedAt": "2025-12-11T23:37:43Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/8",
"repo": "workos/authkit-session",
"number": 8,
"title": "Add userId and sessionId to TokenRefreshError",
"state": "merged",
"additions": 79,
"deletions": 2,
"createdAt": "2025-12-08T17:44:07Z",
"mergedAt": "2025-12-08T18:14:28Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/340",
"repo": "workos/authkit-nextjs",
"number": 340,
"title": "fix: handle full URLs in returnPathname to prevent malformed redirects",
"state": "merged",
"additions": 19,
"deletions": 11,
"createdAt": "2025-12-10T20:18:27Z",
"mergedAt": "2025-12-11T23:46:43Z"
},
{
"url": "https://github.com/nicknisi/nicknisi.com/pull/15",
"repo": "nicknisi/nicknisi.com",
"number": 15,
"title": "Fix code block visibility in light mode",
"state": "merged",
"additions": 22,
"deletions": 1,
"createdAt": "2025-12-08T22:25:40Z",
"mergedAt": "2025-12-08T22:30:37Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/342",
"repo": "workos/authkit-nextjs",
"number": 342,
"title": "fix: handle full URLs in returnPathname to prevent malformed redirects",
"state": "merged",
"additions": 4,
"deletions": 4,
"createdAt": "2025-12-11T23:49:16Z",
"mergedAt": "2025-12-11T23:50:39Z"
},
{
"url": "https://github.com/workos/authkit-react-router/pull/43",
"repo": "workos/authkit-react-router",
"number": 43,
"title": "feat: add organizationId to onSuccess callback",
"state": "merged",
"additions": 3,
"deletions": 1,
"createdAt": "2025-11-05T16:43:50Z",
"mergedAt": "2025-12-12T00:03:19Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/11",
"repo": "workos/authkit-session",
"number": 11,
"title": "v0.3.1",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-12-12T19:54:03Z",
"mergedAt": "2025-12-12T20:05:19Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/9",
"repo": "workos/authkit-session",
"number": 9,
"title": "v0.3.0",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-12-08T21:10:11Z",
"mergedAt": "2025-12-08T21:16:29Z"
}
],
"summary": "Work centered on the `workos/authkit-tanstack-start` library, with `#26` resolving client bundling issues and pulling in an upgraded `authkit-session` dependency. Alongside that, `workos/authkit-session#10` stripped out redundant encryption implementations ahead of the `v0.3.1` patch release in `#11`. A coordinated Next.js security bump landed across `workos/authkit-nextjs#341`, `workos/next-b2b-starter-kit#15`, and `workos/next-authkit-example#44`, and `authkit-nextjs#340`/`#342` fixed malformed redirects caused by full URLs passed to `returnPathname`."
},
{
"weekEnding": "2025-12-07",
"pullRequests": [
{
"url": "https://github.com/workos/workos-node/pull/1409",
"repo": "workos/workos-node",
"number": 1409,
"title": "[v8] Dependency Updates",
"state": "closed",
"additions": 10383,
"deletions": 4362,
"createdAt": "2025-12-02T16:55:11Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/next-authkit-example/pull/42",
"repo": "workos/next-authkit-example",
"number": 42,
"title": "Update example to latest authkit-nextjs, Next.js",
"state": "closed",
"additions": 3748,
"deletions": 2358,
"createdAt": "2025-12-03T18:41:44Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-session/pull/6",
"repo": "workos/authkit-session",
"number": 6,
"title": "Extract authentication business logic and remove deprecated code",
"state": "merged",
"additions": 2199,
"deletions": 2210,
"createdAt": "2025-11-19T19:13:21Z",
"mergedAt": "2025-12-03T00:02:29Z"
},
{
"url": "https://github.com/workos/next-authkit-example/pull/43",
"repo": "workos/next-authkit-example",
"number": 43,
"title": "Update example app to latest authkit-nextjs, Next.js",
"state": "merged",
"additions": 1279,
"deletions": 932,
"createdAt": "2025-12-03T18:53:59Z",
"mergedAt": "2025-12-03T18:57:07Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1413",
"repo": "workos/workos-node",
"number": 1413,
"title": "[v8] fix: migrate from tsup to tsdown for faster, lower-memory builds",
"state": "merged",
"additions": 1054,
"deletions": 715,
"createdAt": "2025-12-04T16:50:38Z",
"mergedAt": "2025-12-04T22:25:20Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1404",
"repo": "workos/workos-node",
"number": 1404,
"title": "Add randomUUID to CryptoProvider for edge runtime compatibility",
"state": "merged",
"additions": 84,
"deletions": 2,
"createdAt": "2025-12-01T23:14:04Z",
"mergedAt": "2025-12-02T00:35:20Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1408",
"repo": "workos/workos-node",
"number": 1408,
"title": "[v8] Improve performance of audit log tests",
"state": "merged",
"additions": 37,
"deletions": 24,
"createdAt": "2025-12-02T01:37:12Z",
"mergedAt": "2025-12-02T15:43:33Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1412",
"repo": "workos/workos-node",
"number": 1412,
"title": "v8.0.0-rc.4",
"state": "merged",
"additions": 4,
"deletions": 4,
"createdAt": "2025-12-04T15:20:11Z",
"mergedAt": "2025-12-04T22:30:43Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/336",
"repo": "workos/authkit-nextjs",
"number": 336,
"title": "v2.12.0",
"state": "merged",
"additions": 4,
"deletions": 4,
"createdAt": "2025-12-02T17:48:03Z",
"mergedAt": "2025-12-03T00:07:32Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1407",
"repo": "workos/workos-node",
"number": 1407,
"title": "v7.75.1",
"state": "merged",
"additions": 4,
"deletions": 4,
"createdAt": "2025-12-02T00:36:42Z",
"mergedAt": "2025-12-02T00:59:12Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/339",
"repo": "workos/authkit-nextjs",
"number": 339,
"title": "Switch runner to ubuntu-latest for socket action",
"state": "merged",
"additions": 2,
"deletions": 2,
"createdAt": "2025-12-03T20:07:36Z",
"mergedAt": "2025-12-03T20:08:45Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/7",
"repo": "workos/authkit-session",
"number": 7,
"title": "v0.2.0",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-12-03T00:06:12Z",
"mergedAt": "2025-12-03T00:09:45Z"
}
],
"summary": "Work spanned the `workos/workos-node`, `workos/authkit-nextjs`, and `workos/authkit-session` SDKs, with notable changes including extracting authentication business logic and removing deprecated code in `workos/authkit-session#6`, adding `randomUUID` to `CryptoProvider` for edge runtime compatibility in `workos/workos-node#1404`, and updating the Next.js example app across `workos/next-authkit-example#42` and `#43`. Version bumps shipped for both `workos/authkit-nextjs#336` and `workos/workos-node#1407`, and `workos/workos-node#1408` improved audit log test performance."
},
{
"weekEnding": "2025-11-30",
"pullRequests": [
{
"url": "https://github.com/workos/workos-node/pull/1398",
"repo": "workos/workos-node",
"number": 1398,
"title": "[v8] Use globalThis.crypto.randomUUID for runtime-agnostic UUIDs",
"state": "merged",
"additions": 3,
"deletions": 2,
"createdAt": "2025-11-24T16:24:13Z",
"mergedAt": "2025-11-24T16:54:04Z"
}
],
"summary": "A small but targeted change landed in `workos/workos-node#1398`, swapping in `globalThis.crypto.randomUUID` to make UUID generation runtime-agnostic across environments. Most of the week's coding activity was in a private PHP project rather than the shipped Node work."
},
{
"weekEnding": "2025-11-23",
"pullRequests": [
{
"url": "https://github.com/workos/template-convex-nextjs-authkit/pull/17",
"repo": "workos/template-convex-nextjs-authkit",
"number": 17,
"title": "Fix AuthKit + Convex race condition on laptop wake",
"state": "merged",
"additions": 42,
"deletions": 17,
"createdAt": "2025-10-31T20:43:00Z",
"mergedAt": "2025-11-19T19:34:10Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/333",
"repo": "workos/authkit-nextjs",
"number": 333,
"title": "v2.11.1",
"state": "merged",
"additions": 4,
"deletions": 4,
"createdAt": "2025-11-20T19:12:19Z",
"mergedAt": "2025-11-20T19:15:02Z"
},
{
"url": "https://github.com/workos/workos-ruby/pull/410",
"repo": "workos/workos-ruby",
"number": 410,
"title": "v5.29.0",
"state": "merged",
"additions": 2,
"deletions": 2,
"createdAt": "2025-11-21T20:43:54Z",
"mergedAt": "2025-11-21T20:46:10Z"
},
{
"url": "https://github.com/workos/workos-ruby/pull/407",
"repo": "workos/workos-ruby",
"number": 407,
"title": "v5.28.0",
"state": "merged",
"additions": 2,
"deletions": 2,
"createdAt": "2025-11-19T21:49:07Z",
"mergedAt": "2025-11-20T13:09:05Z"
},
{
"url": "https://github.com/workos/workos-ruby/pull/406",
"repo": "workos/workos-ruby",
"number": 406,
"title": "Fix reset_password to handle wrapped API response",
"state": "merged",
"additions": 2,
"deletions": 2,
"createdAt": "2025-11-19T20:28:35Z",
"mergedAt": "2025-11-19T21:45:17Z"
}
],
"summary": "Work centered on `workos/authkit-nextjs` with the most session activity, culminating in the `v2.11.1` release at `#333`. A race condition in the Convex + AuthKit integration triggered on laptop wake was patched in `workos/template-convex-nextjs-authkit#17`, and two `workos/workos-ruby` releases (`#406`, `#407`, `#410`) went out including a fix for `reset_password` mishandling a wrapped API response."
},
{
"weekEnding": "2025-11-16",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-js/pull/95",
"repo": "workos/authkit-js",
"number": 95,
"title": "v0.15.0",
"state": "merged",
"additions": 3,
"deletions": 3,
"createdAt": "2025-11-13T00:11:20Z",
"mergedAt": "2025-11-13T00:12:19Z"
}
],
"summary": "Shipped `workos/authkit-js#95` bumping the library to v0.15.0, a small patch release. The bulk of session work spanned `claude-plugins`, an internal Cloudflare-based project, and supporting WorkOS auth libraries including `authkit-session` and `workos-node`."
},
{
"weekEnding": "2025-11-09",
"pullRequests": [
{
"url": "https://github.com/workos/workos-node/pull/1382",
"repo": "workos/workos-node",
"number": 1382,
"title": "[v8] Replace leb and qs deps with vanilla implementations",
"state": "merged",
"additions": 1509,
"deletions": 645,
"createdAt": "2025-11-06T17:07:05Z",
"mergedAt": "2025-11-06T20:23:14Z"
},
{
"url": "https://github.com/nicknisi/dotfiles/pull/240",
"repo": "nicknisi/dotfiles",
"number": 240,
"title": "refactor: migrate dot command to use GNU Stow",
"state": "closed",
"additions": 166,
"deletions": 221,
"createdAt": "2025-11-09T02:03:18Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/workos-go/pull/473",
"repo": "workos/workos-go",
"number": 473,
"title": "v6.0.0",
"state": "merged",
"additions": 102,
"deletions": 102,
"createdAt": "2025-10-30T16:32:23Z",
"mergedAt": "2025-11-06T15:58:55Z"
},
{
"url": "https://github.com/workos/authkit-session/pull/5",
"repo": "workos/authkit-session",
"number": 5,
"title": "v0.1.3",
"state": "merged",
"additions": 9,
"deletions": 191,
"createdAt": "2025-11-06T20:59:14Z",
"mergedAt": "2025-11-06T21:06:31Z"
}
],
"summary": "Dependency modernization dominated the week's public output: `workos/workos-node#1382` replaced the `leb` and `qs` libraries with vanilla implementations, and `workos/authkit-session#5` shipped a net-reduction patch release. Versioned releases also went out for `workos/workos-go#473` (v6.0.0) and `workos/authkit-session#5` (v0.1.3), alongside a closed refactor in `nicknisi/dotfiles#240` that explored migrating the `dot` command to GNU Stow."
},
{
"weekEnding": "2025-11-02",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/12",
"repo": "workos/authkit-tanstack-start",
"number": 12,
"title": "Package updates and type fixes",
"state": "merged",
"additions": 1237,
"deletions": 1890,
"createdAt": "2025-10-24T22:07:22Z",
"mergedAt": "2025-10-27T16:37:05Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/331",
"repo": "workos/authkit-nextjs",
"number": 331,
"title": "Add Next.js 16 support",
"state": "merged",
"additions": 208,
"deletions": 232,
"createdAt": "2025-10-29T21:53:14Z",
"mergedAt": "2025-10-29T22:18:20Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/332",
"repo": "workos/authkit-nextjs",
"number": 332,
"title": "fix: prevent caching issues on authenticated pages",
"state": "closed",
"additions": 84,
"deletions": 10,
"createdAt": "2025-11-02T22:43:32Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/workos-node/pull/1371",
"repo": "workos/workos-node",
"number": 1371,
"title": "[v8] Add dynamic import wrapper for jose to support Node.js 20.15-20.18",
"state": "merged",
"additions": 52,
"deletions": 26,
"createdAt": "2025-10-20T19:38:28Z",
"mergedAt": "2025-10-28T17:20:59Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/327",
"repo": "workos/authkit-nextjs",
"number": 327,
"title": "docs: fix state parameter type documentation to match implementation",
"state": "merged",
"additions": 30,
"deletions": 24,
"createdAt": "2025-10-28T16:38:52Z",
"mergedAt": "2025-10-29T22:29:13Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/16",
"repo": "workos/authkit-tanstack-start",
"number": 16,
"title": "fix: correct handleCallbackRoute usage in README examples",
"state": "merged",
"additions": 37,
"deletions": 2,
"createdAt": "2025-10-29T13:37:00Z",
"mergedAt": "2025-10-29T16:22:50Z"
},
{
"url": "https://github.com/workos/workos-go/pull/471",
"repo": "workos/workos-go",
"number": 471,
"title": "Change organization metadata to map[string]*string",
"state": "merged",
"additions": 20,
"deletions": 11,
"createdAt": "2025-10-30T14:22:18Z",
"mergedAt": "2025-10-30T16:29:44Z"
},
{
"url": "https://github.com/workos/workos-go/pull/472",
"repo": "workos/workos-go",
"number": 472,
"title": "Fix UpdateOrganization JSON serialization",
"state": "merged",
"additions": 3,
"deletions": 3,
"createdAt": "2025-10-30T14:36:19Z",
"mergedAt": "2025-10-30T16:29:29Z"
},
{
"url": "https://github.com/workos/workos-go/pull/474",
"repo": "workos/workos-go",
"number": 474,
"title": "Fix CreateOrganizationOpts.Metadata to use map[string]string",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-10-30T16:55:56Z",
"mergedAt": "2025-10-30T17:00:44Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/15",
"repo": "workos/authkit-tanstack-start",
"number": 15,
"title": "change node version in release version",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-10-27T17:26:56Z",
"mergedAt": "2025-10-27T17:27:47Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/13",
"repo": "workos/authkit-tanstack-start",
"number": 13,
"title": "v0.2.0",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-10-24T22:13:34Z",
"mergedAt": "2025-10-27T17:22:17Z"
}
],
"summary": "Work spanned three repositories — `workos/authkit-nextjs`, `workos/authkit-tanstack-start`, and `workos/workos-go` — covering Next.js 16 compatibility in `authkit-nextjs#331`, a cache-fix attempt in `#332`, and a run of metadata type corrections in `workos-go#471`, `#472`, and `#474` addressing `map[string]*string` serialization issues. The `authkit-tanstack-start` work included package updates, type fixes, and a README correction in `#16`, culminating in the `v0.2.0` release via `#13`. Documentation accuracy was a recurring theme, with `authkit-nextjs#327` fixing the state parameter type docs to match the actual implementation."
},
{
"weekEnding": "2025-10-26",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-nextjs/pull/325",
"repo": "workos/authkit-nextjs",
"number": 325,
"title": "feat: Add Cookie Chunking to handle large JWTs",
"state": "closed",
"additions": 529,
"deletions": 11,
"createdAt": "2025-10-20T11:19:56Z",
"mergedAt": null
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/9",
"repo": "workos/authkit-tanstack-start",
"number": 9,
"title": "feat: add onSuccess and onError hooks to callback route",
"state": "merged",
"additions": 295,
"deletions": 16,
"createdAt": "2025-10-20T13:54:19Z",
"mergedAt": "2025-10-23T16:39:24Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/10",
"repo": "workos/authkit-tanstack-start",
"number": 10,
"title": "chore: remove dotenv from example vite.config",
"state": "merged",
"additions": 0,
"deletions": 14,
"createdAt": "2025-10-20T15:28:44Z",
"mergedAt": "2025-10-23T16:39:08Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/8",
"repo": "workos/authkit-tanstack-start",
"number": 8,
"title": "Fix signOut to delete the configured session cookie name",
"state": "merged",
"additions": 7,
"deletions": 4,
"createdAt": "2025-10-20T11:54:45Z",
"mergedAt": "2025-10-23T16:39:45Z"
},
{
"url": "https://github.com/workos/workos-python/pull/488",
"repo": "workos/workos-python",
"number": 488,
"title": "v5.31.2",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-10-15T20:18:47Z",
"mergedAt": "2025-10-20T14:23:09Z"
}
],
"summary": "A minimal patch release landed in `workos/workos-python#488`, bumping the version with a single-line change."
},
{
"weekEnding": "2025-10-19",
"pullRequests": [
{
"url": "https://github.com/workos/workos-node/pull/1369",
"repo": "workos/workos-node",
"number": 1369,
"title": "Default PaginationOptions on AutoPaginatable",
"state": "merged",
"additions": 1,
"deletions": 1,
"createdAt": "2025-10-13T17:00:14Z",
"mergedAt": "2025-10-13T17:37:08Z"
}
],
"summary": "Shipped two PRs to `workos/workos-node`: `#1293` adds runtime analytics to the User-Agent string as part of the v8 work (+378/-67), and `#1369` applies a small default fix to `PaginationOptions` on `AutoPaginatable`. Additional work touched internal projects not reflected in public PRs."
},
{
"weekEnding": "2025-10-12",
"pullRequests": [
{
"url": "https://github.com/workos/workos-node/pull/1368",
"repo": "workos/workos-node",
"number": 1368,
"title": "[v8] Update Dependencies ",
"state": "merged",
"additions": 2513,
"deletions": 1313,
"createdAt": "2025-10-08T22:45:27Z",
"mergedAt": "2025-10-10T00:18:03Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1365",
"repo": "workos/workos-node",
"number": 1365,
"title": "Remove deprecated properties for v8",
"state": "merged",
"additions": 6,
"deletions": 208,
"createdAt": "2025-10-07T19:41:02Z",
"mergedAt": "2025-10-07T20:18:49Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/3",
"repo": "workos/authkit-tanstack-start",
"number": 3,
"title": "Prepare package for v0.1.0 release",
"state": "merged",
"additions": 38,
"deletions": 3,
"createdAt": "2025-10-06T15:40:48Z",
"mergedAt": "2025-10-06T15:44:14Z"
},
{
"url": "https://github.com/workos/workos-node/pull/1366",
"repo": "workos/workos-node",
"number": 1366,
"title": "[v8] drop node 18",
"state": "merged",
"additions": 16,
"deletions": 16,
"createdAt": "2025-10-07T20:17:49Z",
"mergedAt": "2025-10-08T13:47:33Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/2",
"repo": "workos/authkit-tanstack-start",
"number": 2,
"title": "build fixes",
"state": "merged",
"additions": 14,
"deletions": 2,
"createdAt": "2025-10-06T15:06:23Z",
"mergedAt": "2025-10-06T15:08:13Z"
},
{
"url": "https://github.com/workos/authkit-nextjs/pull/319",
"repo": "workos/authkit-nextjs",
"number": 319,
"title": "v2.10.0",
"state": "merged",
"additions": 4,
"deletions": 4,
"createdAt": "2025-10-08T16:14:50Z",
"mergedAt": "2025-10-08T16:15:58Z"
},
{
"url": "https://github.com/workos/workos-kotlin/pull/296",
"repo": "workos/workos-kotlin",
"number": 296,
"title": "Update Nexus publishing endpoints",
"state": "merged",
"additions": 3,
"deletions": 2,
"createdAt": "2025-10-09T19:34:53Z",
"mergedAt": "2025-10-09T19:59:44Z"
}
],
"summary": "Work spanned a v8 major release cycle for `workos/workos-node`, including dependency updates (`#1368`), dropping Node 18 support (`#1366`), and removing deprecated properties (`#1365`). On the auth integration side, `workos/authkit-nextjs#314` added custom state data passthrough in the authentication flow, and the new `workos/authkit-tanstack-start` package was brought to its v0.1.0 release via `#2` and `#3`. A Nexus publishing endpoint update landed in `workos/workos-kotlin#296`."
},
{
"weekEnding": "2025-10-05",
"pullRequests": [
{
"url": "https://github.com/workos/authkit-session/pull/4",
"repo": "workos/authkit-session",
"number": 4,
"title": "Refactor project to support tanstack start",
"state": "merged",
"additions": 903,
"deletions": 1305,
"createdAt": "2025-10-04T15:33:40Z",
"mergedAt": "2025-10-04T15:54:23Z"
},
{
"url": "https://github.com/workos/authkit-tanstack-start/pull/1",
"repo": "workos/authkit-tanstack-start",
"number": 1,
"title": "add CI",
"state": "closed",
"additions": 233,
"deletions": 0,
"createdAt": "2025-10-03T19:49:52Z",
"mergedAt": null
}
],
"summary": "Refactored `workos/authkit-session#4` to support TanStack Start, resulting in a net reduction in code alongside the new framework integration. CI setup was added in `workos/authkit-tanstack-start#1`, though that PR was closed rather than merged."
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment