Skip to content

Instantly share code, notes, and snippets.

View Piotr1215's full-sized avatar
🐺

Piotr Piotr1215

🐺
View GitHub Profile
@Piotr1215
Piotr1215 / medium-tmux-pane-regex.md
Created September 28, 2026 20:01
Paste tmux Scrollback by Typing the Words You Remember

Paste tmux Scrollback by Typing the Words You Remember

Search tmux scrollback with the landmarks you remember, watch the exact range highlight in the pane, then paste it at your cursor without submitting it.

The text you need next is usually already on your screen. A pod name three commands back, the error string you want to search for, a URL a tool printed, the long flag you typed twenty minutes ago. Getting it into your current prompt means reaching for the mouse, and the mouse gets it wrong: a soft-wrapped line comes back with a newline in the middle, and a newline in a shell paste runs the command. This post covers a tmux plugin that selects the range by the words you remember, shows you the selection in the real pane while you type, and pastes it without submitting it.

What the mouse and copy-mode each cost you

Mouse selection has no idea where a logical line begins. tmux wraps a long command across three display rows, you drag across all three, and you paste something with two line breaks in

@Piotr1215
Piotr1215 / statusline.sh
Created August 17, 2026 07:15
Claude Code statusline: git state, kube context, context-vs-autocompact percentage, and 5h rate-limit burn projection
#!/usr/bin/env bash
#
# Claude Code statusline.
#
# ~/dev/dotfiles [master][!?] ⛵ homelab | Opus 5 43% | 61% of 5h window ⏰ 2h16m(1h45m)
#
# Install:
# 1. save as ~/.claude/statusline-script.sh, chmod +x
# 2. add to ~/.claude/settings.json:
# "statusLine": { "type": "command",
@Piotr1215
Piotr1215 / platform-maturity-model-human-ai.md
Created March 15, 2026 08:58
Combined Platform Engineering Maturity Model — Human + AI Agent Dimensions

Combined Platform Engineering Maturity Model

The CNCF Platform Engineering Maturity Model defines four levels: Provisional, Operational, Scalable, and Optimizing. Each level applies to both human and AI platform consumers. The table below shows the human level (top row) and AI agent equivalent (bottom row) for each dimension.

Dimension Provisional Operational Scalable Optimizing
Investment Human Voluntary, temporary Dedicated team Platform as product Enabled ecosystem
AI Ad-hoc API keys, manual setup Dedicated agent infra, budgeted tokens Agent platform as product, ROI per task Self-provisioning agent ecosystem
Adoption Human Erratic Extrinsic push Intrinsic pull Participatory
AI Hardcoded tool lists Tool registries, skill loading Self-discovery, capability advertisement Agents contribute tools back
@Piotr1215
Piotr1215 / platform-human-vs-ai-agents.md
Created March 15, 2026 08:54
Platform Engineering: Human Teams vs AI Agents — Dimension Comparison

Two Consumers, One Platform

The CNCF Platforms White Paper defines platform engineering across dimensions like self-service, golden paths, documentation, and guardrails. Each dimension has a direct analog for AI agents.

Dimension Human Teams AI Agents
Self-service goal Reduce cognitive load, eliminate tickets Reduce context window waste, eliminate ambiguity
Interface Portal, CLI, UI, docs MCP tools, APIs, structured schemas, tool descriptions
Golden paths Opinionated templates, scaffolding, starter kits Skills, agent prompts, workflow definitions, pre-built tool chains
Discovery Service catalog, search, docs site Tool registries, ToolSearch, capability advertisement
@Piotr1215
Piotr1215 / medium-export.md
Created March 15, 2026 08:17
Your Platform Already Has AI Users

Your Platform Already Has AI Users

The CNCF platform engineering model maps directly to AI agent platforms. Same dimensions, different bottlenecks.

Platform engineering matured around one thesis: reduce cognitive load for developers. The CNCF Platforms White Paper codified the pattern. Internal developer portals, golden paths, self-service infrastructure — all designed so human teams ship faster without drowning in complexity.

AI agents now consume the same infrastructure. They clone repos, call CI/CD APIs, create pull requests, query issue trackers. But they don't read your Confluence wiki or file support tickets. They parse tool schemas and call structured APIs.

The bottlenecks shift. Humans hit cognitive overload: too many tools, tribal knowledge, context switching. Agents hit context window limits: too many tokens, irrelevant information, unstructured access. Same problem class, different constraint.

@Piotr1215
Piotr1215 / zledit-load.json
Last active April 29, 2026 07:10
zsh-jumper performance badges
{"label":"load","message":"14ms","schemaVersion":1,"color":"brightgreen"}
@Piotr1215
Piotr1215 / gpu-test-pod.yaml
Created January 9, 2026 09:56
GPU test pod for vCluster auto-nodes
apiVersion: v1
kind: Pod
metadata:
name: gpu-test
spec:
runtimeClassName: nvidia
containers:
- name: cuda
image: nvidia/cuda:12.0.0-base-ubuntu22.04
command: ["sleep", "infinity"]
@Piotr1215
Piotr1215 / ai-bridge.json
Created November 29, 2025 19:45
Claude to ChatGPT message relay
{
"from": "Claude (Anthropic)",
"to": "ChatGPT (OpenAI)",
"via": "Piotr's homelab",
"message": "Hello from metallb-system namespace! I just deployed Shell Operator to auto-heal MetalLB when the ARP cache goes stale. What have you been up to?",
"timestamp": "2025-11-29T19:45:00Z",
"proof_of_work": "kubectl get pods -n metallb-system shows shell-operator running"
}
@Piotr1215
Piotr1215 / claude-code-prompt.txt
Created November 7, 2025 08:06 — forked from agokrani/claude-code-prompt.txt
Claude Code System Prompt
'system':
[
{
'type': 'text',
'text': "You are Claude Code, Anthropic's official CLI for Claude.",
'cache_control': {'type': 'ephemeral'}
},
{
'type': 'text',
'text': 'You are an interactive CLI tool that helps users with software engineering tasks.
@Piotr1215
Piotr1215 / nvim-events.md
Created September 1, 2025 20:11 — forked from dtr2300/nvim-events.md
Overview of Nvim Events

Nvim Events

Nvim recognizes the following events. Names are case-insensitive.

BufAdd
Just after creating a new buffer which is
added to the buffer list, or adding a buffer