Oliver Kriska @quatermain.bsky.social · 21/05/2026Kumbukum looks as a nice service. Similar what I do in Scribe. I'm still thinking making output accessible also online and not only locally but I'm afraid of security. Looks like you handled it already, or not? :D good luck with your work 010
Oliver Kriska @quatermain.bsky.social · 21/05/2026Thanks, also for all others, there is PR with a lot of information and would be nice to get feedback, ideas and so on about this automatic support for all main agents github.com/oliver-krisk...github.comMulti-agent port: Codex, OpenCode, Pi (v3.0.0) by oliver-kriska · Pull Request #46 · oliver-kriska/claude-elixir-phoenixSummary Single source of truth in plugins/elixir-phoenix/; targets/codex/ is generated by scripts/port.py and checked in for Codex install. targets/{pi,opencode}/ are gitignored — built locally wi... 011
Oliver Kriska @quatermain.bsky.social · 21/05/2026Full eval framework, autoresearch loop, and 22 Iron Laws are in github.com/oliver-kriska/claude-elixir-phoenix . If you maintain Claude Code skills, run a tournament on your descriptions before your next release. It costs less than a coffee and changes more than a feature. #ClaudeCode #ElixirLang 020
Oliver Kriska @quatermain.bsky.social · 21/05/2026The descriptions the autoresearch loop landed on were ones I would never have written. Not because they were better English. Because they hit the user's vocabulary, which my brain — being the author — had stopped seeing. 110
Oliver Kriska @quatermain.bsky.social · 21/05/2026Skill descriptions are interface design, not feature design. Your users do not read the implementation. They type a few words. The model reads a few sentences. If those two layers do not share vocabulary, the feature does not exist. 100
Oliver Kriska @quatermain.bsky.social · 21/05/202620+ iterations. 0 discards (every winner was kept). 100% win rate at the end. /phx:plan trigger recall: 0% → 100%. Across the whole plugin: tournament mode lifted trigger accuracy 50.5% → 78%. Total cost: $0.40. 110
Oliver Kriska @quatermain.bsky.social · 21/05/2026So I built a loop. Generate 8 candidate descriptions. Test each against 50 user phrasings. Pick the winner. Then iterate on the winner. Pure tournament. Each round costs about $0.05 of API (but I used subscription) 100
Oliver Kriska @quatermain.bsky.social · 21/05/2026First attempt: rewrite the description by hand. I am the author. I should know. Recall went from 0% to 18%. Worse — every rewrite I tried felt right but tested badly. I was guessing. 100
Oliver Kriska @quatermain.bsky.social · 21/05/2026The skill description used technical vocabulary — "Phoenix planning workflow", "PRD generator". Users phrase their work as "build", "add", "make". When the user query and the skill description live in different vocabularies, recall is zero. The skill might as well not exist. 100
Oliver Kriska @quatermain.bsky.social · 21/05/2026Before v2.6.0, the /phx:plan skill in my Claude Code plugin had a 0% trigger recall. Send "build a chat feature" to Haiku. It would never route to /phx:plan. The skill was good. The description was unfindable. 120
Oliver Kriska @quatermain.bsky.social · 21/05/2026Most "AI memory" tools forget the failure path. The 3-week dead end nobody resolved — six months later you re-derive it from scratch in a different repo. scribe captures the failure too. Your agents stop starting from zero. getscribe.dev · github.com/oliver-kriska/scribe 100
Oliver Kriska @quatermain.bsky.social · 21/05/2026Two ways to run it. Same pipeline, one YAML line: · Claude API — best quality, $ per sync · 100% local Ollama — $0/sync, gemma3:12b, ~70s for the weekly Dream cycle on a 32GB Mac Per-op overrides too: keep cheap passes local, pin heavy writes to Claude. No lock-in. 110
Oliver Kriska @quatermain.bsky.social · 21/05/2026How it gathers data: · every Claude Code + Codex session (ccrider FTS5) · git commits across your repos · URLs you text yourself (iMessage bookmarks) · drop files Claude leaves in any repo BM25 picks the dense ones, two-pass LLM writes the wiki, qmd indexes it with embeddings. 100
Oliver Kriska @quatermain.bsky.social · 21/05/2026I never write notes. My tools do. scribe reads my git commits, my Claude Code + Codex sessions, the links I text myself — and writes a wiki my next agent session queries. 6,977 docs in 4.5 months. Zero typed by hand. getscribe.dev #ClaudeCode #AI 120
Oliver Kriska @quatermain.bsky.social · 20/05/2026Plus the multi-model trigger eval foundation: MODEL=sonnet make eval-multimodel MODELS=haiku,sonnet make eval-compare-models Per-model cache + N-way ASCII comparator with ↕/⚠ disagreement markers. Groundwork for verifying v3.0.0 multi-agent ports on non-Claude judges. 110
Oliver Kriska @quatermain.bsky.social · 20/05/2026v2.10.3 — CC hook-API catch-up (2.1.110 / .139 / .145): · Stop hook surfaces forgotten `mix phx.server` + pending `/schedule` jobs · block-dangerous-ops emits structured JSON deny + safer-alternative additionalContext that persists into the next turn · SessionStart welcome → args[] exec form 100
Oliver Kriska @quatermain.bsky.social · 20/05/2026v2.10.2 — /phx:research, /phx:brainstorm, /phx:perf, /phx:pr-review now reliably invoke when typed as slash commands (#53, reported by @bigardone). Root cause: stale `disable-model-invocation: true` hit claude-code#26251. Same fix plan/review/investigate got months ago. 100
Oliver Kriska @quatermain.bsky.social · 20/05/20262.10.1 — Cross-project hook bleed (#55). Enable the plugin globally and before this: Phoenix Iron Laws fired on tokenizer.cpp (token), /admin_panel/ parent-dir matches, unrelated repos. After: 9 hooks self-gate on mix.exs. Filename match tightened to .ex/.exs/.heex/.eex. 100
Oliver Kriska @quatermain.bsky.social · 20/05/2026v2.10.1 → v2.10.3 of the Elixir/Phoenix plugin for Claude Code. Three patch releases, one theme: be a better citizen — global-install safe, slash commands reliable, hooks aligned with latest CC. 28 files | +635/-90 github.com/oliver-kriska/claude-elixir-phoenix #ElixirLang #ClaudeCode 150
Oliver Kriska @quatermain.bsky.social · 19/05/2026Exactly. Try it out and let me know feedback so we can make it even better than first version 110
Oliver Kriska @quatermain.bsky.social · 19/05/2026Graceful degradation is the contract: a missing source becomes 1 honest line in Risks, never an error. git log is the always-available floor. /ketchup is the easter-egg alias. Why not. github.com/oliver-kriska/claude-eli… 000
Oliver Kriska @quatermain.bsky.social · 19/05/2026The bit github user druyang asked for and I'm proudest of: "Impact on your work" intersects files OTHERS moved upstream with YOUR in-flight scope (open PRs, local branches, working tree). Direct vs adjacent overlap, classified. --depth deep reads diffs for per-file semantic impact. 100
Oliver Kriska @quatermain.bsky.social · 19/05/2026/catchup pulls in your time window: · GitHub: review-requests + notifications · Git: commits + diffs on branches that moved · Linear MCP: issues + comments touched · Google Calendar MCP: meetings you missed Then collapses into one Context Brief — not five tabs. 100
Oliver Kriska @quatermain.bsky.social · 19/05/2026v2.10.0 of the Elixir/Phoenix plugin for Claude Code ships a second plugin alongside it: catchup — framework-agnostic, return-from-absence briefing for async teams. One /catchup, one prioritized brief. No firehose. phxagents.dev/install #ClaudeCode #DevTools 210
Oliver Kriska @quatermain.bsky.social · 17/05/2026But yes, without AI it would be impossible. I have there skill for checking cc changelog and verify state of plugin, skill for creating twitter/x posts, etc 010
Oliver Kriska @quatermain.bsky.social · 17/05/2026Later I added tool for investigating of previous sessions where I used those skills, testing those skills and also later multiple layers of evaluation. Also based on my sessions with building those skills and agents I built own skills to simplify the process. 110
Oliver Kriska @quatermain.bsky.social · 17/05/2026I’m trying to set there workflows to gather some data and store only rules and docs which are stable. So you should not find there some exact api calls, mostly references and so on. Also I have “framework “ around it. I started with a few skill, added more… 110
Oliver Kriska @quatermain.bsky.social · 17/05/2026Open-source. Working contributor guide in the repo. Tell me what is missing — especially if you maintain anything LiveView, Ecto, or Oban heavy. The next 22 Iron Laws will come from real production pain, not from me alone. 000
Oliver Kriska @quatermain.bsky.social · 17/05/20268-dimension eval framework. 24 Python matchers. 52 pytest tests. ~5 second CI run. Autoresearch loop ran 20+ iterations on skill descriptions. 0 discards. Tournament mode raised trigger accuracy 50.5% → 78% at $0.40 of API cost. This is the part nobody sees. It is also the only reason this scales. 100
Oliver Kriska @quatermain.bsky.social · 17/05/2026Skills are slash commands. Agents are specialists you spawn for parallel work. Iron Laws are hard rules that block bad output before it ships. Hooks tie it together — 9 events fired, 18 scripts wired in. PostToolUse was silently broken for a month before session analysis caught it. 110
Oliver Kriska @quatermain.bsky.social · 17/05/2026laude-elixir-phoenix at 4 months in. 41 skills · 20 specialist agents · 22 Iron Laws · 100 reference docs · 18 hooks. ~28,000 lines. Everything I have learned shipping production Phoenix apps, encoded as machine-readable rules. github.com/oliver-kriska/claude-elixir-phoenix 272
Oliver Kriska @quatermain.bsky.social · 15/05/2026$8,523 of Claude Code over ~4.5 months. 11.9B tokens. 11.4B of them — 96% — are cache reads. That ratio is the whole story. The bill stays low not because the work is small, but because the harness reuses context instead of paying for it twice. 100
Oliver Kriska @quatermain.bsky.social · 15/05/2026Let me know if you have some topics which you would like to see. Meanwhile you can check also tool which is responsible for it getscribe.devgetscribe.devscribe — your knowledge base, written by your toolsA single-binary CLI that turns your git repos, Claude Code sessions, and self-sent links into a curated, semantically searchable wiki. Cross-project, cron-driven, fully local-capable. 011
Oliver Kriska @quatermain.bsky.social · 14/05/2026This is /phx:review on a real PR. The unlock is not "AI reviews code." It is orchestration + model-tiering + result compression — the shape Erlang/OTP gave us decades ago, applied to agents. 110
Oliver Kriska @quatermain.bsky.social · 14/05/2026By design, the 7 agents do not dump raw output into the main session. Full per-agent findings persist on disk. A context-supervisor (haiku) can dedupe and compress them before the parent synthesises. You get depth when you need it, safe context when you don't 100
Oliver Kriska @quatermain.bsky.social · 14/05/2026Each agent runs on the model that fits its job. security-analyzer → opus elixir-reviewer, liveview-architect, testing-reviewer, iron-law-judge, requirements-verifier → sonnet verification-runner → haiku You do not pay opus rates for `mix *` commands 100
Oliver Kriska @quatermain.bsky.social · 14/05/20267 specialist agents reviewing one PR in parallel. 37 files, +296 / −123. A real rewrite, not a toy diff. ~315k tokens, ~2 minutes wall time. Sequential would be ~11 minutes 130
Oliver Kriska @quatermain.bsky.social · 14/05/202611,000 PRs. 5 active developers. 26 contributors total. 5 years. Not because we are unusually fast. Because the pipeline is set up so that "is this safe to merge" is a 2-minute question, not a 2-hour one. Pipeline beats individual velocity, every quarter, forever. #SoftwareEngineering 041
Oliver Kriska @quatermain.bsky.social · 12/05/2026METR, 2025: experienced devs using AI were 19% slower. They believed they were 24% faster. The IDE got faster. The pipeline did not. The brain definitely did not. That gap is where most of the AI productivity debate is happening — and almost no one is naming it. #AIEngineering 100
Oliver Kriska @quatermain.bsky.social · 11/05/2026What's the one Elixir + AI question you've been afraid to ask - context engineering, production agent harnesses, anything? The next post is probably your answer. #AIEngineering #ContextEngineering 000
Oliver Kriska @quatermain.bsky.social · 11/05/2026Expect more posts. Not more volume — more density. Each one backed by a real session, a real number, or a real failure. No takes. No slop. 100
Oliver Kriska @quatermain.bsky.social · 11/05/2026For the past 4 months I have been quietly building a pipeline: more than 4,000 markdown documents of research, session logs, Phoenix patterns, and what I have actually shipped — all indexed, searchable. That is the input. The output starts this week. 220
Oliver Kriska @quatermain.bsky.social · 06/01/2025If I take simple ping as a marker, I have 6ms to app.hey .com server (104.18.5.243). 010
Oliver Kriska @quatermain.bsky.social · 06/01/2025I think Hey .com has this stack as well and it's really slow. Not sure if it's because I'm in east Europe but I'm really disappointed about it. And it's not because of HW or connection, 350 mbps Wifi or 500 mbps 5G connection. I hope native.live will be fasternative.liveLiveView NativeLiveView Native eliminates the need to maintain web and native development teams, empowering developers to build web and native seamlessly with Phoenix. 110
Reposted by Oliver Kriska Pieter Claerhout @yellowduck.be · 25/12/2024A good overview of things you really want to know about PostgreSQL by @hibachrach.com #database #postgresql #reading-listchallahscript.comWhat I Wish Someone Told Me About Postgres#database #postgresql #reading-list 0197
Oliver Kriska @quatermain.bsky.social · 21/12/2024Hmm. I don’t get it, from year perspective 12k vs 50k. Or do you mean that this small cost can be lost in paperwork so you just forget about it same as Netflix subscription? 100
Oliver Kriska @quatermain.bsky.social · 21/12/2024You can take these topics and invite some other developers from known companies to introduce them and discuss that topic. I started similar way podcast in my language. 000
Oliver Kriska @quatermain.bsky.social · 11/12/2024There are some updates: "This release address by introducing a compiler lock, ensuring that only a single operating system running Elixir compiles your project at a given moment" github.com/elixir-lang/...github.comRelease v1.18.0-rc.0 · elixir-lang/elixirElixir v1.18 is an impressive release with improvements across the two main efforts happening within the Elixir ecosystem right now: set-theoretic types and language servers. It also comes with bui... 010