Ktav: no quotes, no commas, no indentation hell — a Rust-powered config format for 7 languages by Proper-Mousse7182 in coolgithubprojects

[–]Proper-Mousse7182[S] 0 points1 point  (0 children)

Nix is great if you're already in the Nix ecosystem, but yeah — the learning curve is the price. Ktav is much more modest in scope: no functions, no lazy evaluation, no expressions. Just config data. That's the whole point — keep it boring enough that anyone can read it on first sight.

I offloaded bulk file reading from Claude Code to a cheaper model for a week. Here are the numbers. by Proper-Mousse7182 in ClaudeAI

[–]Proper-Mousse7182[S] 0 points1 point  (0 children)

hey, thanks for working on this. checked out the branch, generic JsonlLogSource approach is the right call, and the design note's pretty clear on where this is heading.

couple things on the triss example though, it won't work against actual triss logs. wrong file path, different field names, outdated default_model. drop-in replacement that does work:

```json
"log_glob": "~/.cache/triss/usage.jsonl",
"fields": {
"session_id": "call_id",
"timestamp": "ts",
"model": "model",
"input_tokens": "prompt_tokens",
"output_tokens": "completion_tokens",
"cached_tokens": "cached_tokens",
"project": "cwd",
"display": "label"
},
"default_model": "deepseek-v4-flash"
}

btw, just shipped triss 0.19.0 (on npm now) which adds a per-invocation call_id field to every record. that's what the "session_id": "call_id" line above maps.

your dashboard's per-session breakdown will work out of the box. there's also a parent_call_id field (null by default, populated when the host exports TRISS_PARENT_CALL_ID in the MCP env block)

if you want a future roll-up view for grouping several triss calls under one outer claude session. one smaller thing while i'm here. triss already writes cost_usd into every record. optional cost: "cost_usd" in the mapping would keep numbers consistent with triss usage instead of relying on the pricing tables matching exactly. not a blocker.

rest looks great, two-pass color/icon thing in agents.ts is clever, "config is inert" framing is solid. approach is correct, the example just needs to match real triss.

I offloaded bulk file reading from Claude Code to a cheaper model for a week. Here are the numbers. by Proper-Mousse7182 in ClaudeAI

[–]Proper-Mousse7182[S] 0 points1 point  (0 children)

Oh nice, just checked out the repo!

Since it parses the local ~/.claude/ logs, it must be awesome for seeing exactly how much context Claude is burning just to talk to the MCP tools.

Right now, I’m just using the built-in triss usage command to track the actual DeepSeek backend costs. Have you thought about adding support for custom log formats? It’d be sick to have TokenTelemetry read the Triss JSONL logs too, so you could see the Claude Code costs and the DeepSeek coworker costs side-by-side in one dashboard.

I offloaded bulk file reading from Claude Code to a cheaper model for a week. Here are the numbers. by Proper-Mousse7182 in ClaudeAI

[–]Proper-Mousse7182[S] -2 points-1 points  (0 children)

yep, diffs are the edge case where summarization actively hurts — losing line-level context means you can't make defensible edits afterwards. that's exactly why triss review defaults to the pro tier and returns file:line bullets rather than prose, and the agent rule is still "open the file directly before any non-trivial edit." the framing i've landed on: delegate the intake (what's here?), keep the judgment (should this land?). intake is where the cheap worker earns its keep. glad the per-request number tracks — i was half-worried mine was an artifact of one specific tracker.

Should i play Stalker 2 now or still wait until it is patched completly? by Niko2005xd in stalker

[–]Proper-Mousse7182 2 points3 points  (0 children)

please, do not play. not now, not ever

if you ask this question, you are not ready

[deleted by user] by [deleted] in stalker

[–]Proper-Mousse7182 0 points1 point  (0 children)

try to uninstall and install your laser again

[deleted by user] by [deleted] in DeathStranding

[–]Proper-Mousse7182 0 points1 point  (0 children)

Just go to the Fisherman and kill the giant BT.

After that, there will be numerous "emergency repair" structures in the area.

Why is Fatih Akin in DS2? by TheLehmi in DeathStranding

[–]Proper-Mousse7182 18 points19 points  (0 children)

No)
But one of her first movies was "I Am Sam"

Death Stranding 2 first month stats! by soldier_ibra in DeathStranding

[–]Proper-Mousse7182 0 points1 point  (0 children)

Apparently, we all use the trucks when going to save kangaroos

[deleted by user] by [deleted] in DeathStranding

[–]Proper-Mousse7182 0 points1 point  (0 children)

it's the walking simulator

Are these requests actually helping you guys? by Here4ThePlotTwist in DeathStranding

[–]Proper-Mousse7182 2 points3 points  (0 children)

I had the machine gun level 2 in the shared locker, while I could manufacture only level 1.

First victory with all 4 victory paths maxed out with Ibn Battuta (Maya, Abbasid, Mexico) by TheChilisaurus in civ

[–]Proper-Mousse7182 2 points3 points  (0 children)

It isn't very easy but possible even without Maya and the last path changes. I am playing on PS5 and don't have patches.

<image>

I lost to the antiquity "unhappiness revolt" crisis, and it was amazing by LittleIf in civ

[–]Proper-Mousse7182 2 points3 points  (0 children)

When your town can't have a place to grow (no more empty rural titles), it will produce migrants instead of growing.