Skip to content

Instantly share code, notes, and snippets.

View pliablepixels's full-sized avatar
💭
A clear conscience is usually the sign of a bad memory

Pliable Pixels pliablepixels

💭
A clear conscience is usually the sign of a bad memory
  • USA
View GitHub Profile
@pliablepixels
pliablepixels / gist:73d61e28060c8d418f9fcfb1e912e425
Created January 31, 2026 12:18
Ubuntu 24 notes for OpenCV latest version and 1050 NVIDIA GPU
wget https://developer.download.nvidia.com/compute/nvidia-driver/590.48.01/local_installers/nvidia-driver-local-repo-ubuntu2404-590.48.01_1.0-1_amd64.deb
sudo dpkg -i nvidia-driver-local-repo-ubuntu2404-590.48.01_1.0-1_amd64.deb
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run --toolkit --silent --override
sudo apt install libcudnn8-dev=8.9.7.29-1+cuda11.8 libcudnn8=8.9.7.29-1+cuda11.8
Add to your ~/.bashrc:
export PATH=/usr/local/cuda-11.8/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH
@pliablepixels
pliablepixels / v3 migration.md
Last active January 31, 2026 11:14
v3 api migration for zmNg

API V3 Migration Review

1. Architecture Overview

Current API (v1/CakePHP)

  • Base path: /api/ with .json suffix on all endpoints
  • Auth: Token passed as query parameter (?token=xxx)
  • Request format: Form-encoded POST bodies (Monitor[Function]=Modect)
  • Response wrapping: Objects nested inside { monitors: [{ Monitor: {...}, Monitor_Status: {...} }] }
  • Naming: PascalCase field names (MonitorId, StartDateTime, CaptureFPS)
@pliablepixels
pliablepixels / yolo.py
Created January 31, 2026 09:59
pyzm yolo fix without version checks
import numpy as np
import sys
import cv2
import time
import datetime
import re
from pyzm.helpers.Base import Base
import portalocker
import os
#!/bin/bash
# claude-runner.sh - Runs Claude CLI with automatic rate-limit handling
# Uses tmux to maintain proper terminal environment
set -euo pipefail
SESSION_NAME="claude-worker"
RESUME_FILE="$HOME/.claude-session-id"
STATE_FILE="$HOME/.claude-runner-state"
## 👤 User
Analyze agents.md to make sure its in great shape. One key issue I see is you implement things, run tests, say its all ok, but it breaks when I try. Are you generating/updating tests always? If not, how shoulD AGENTS.md be improved? I really want to follow a "test for everything" philosophy - when tests pass, it really should mean the app should work and all options/buttons/screens tested
---
## 🤖 Claude
I'll analyze AGENTS.md and identify the testing gaps. Let me first check what tests currently exist:
## 👤 User
The full walkthrough tests are surfacial. If I want to write human readable instructions on the flow (I want it to go step by step into each screen and test functionality of items), and use that human redable instructions to generate code for e2e tests, what is the best approach?
---
## 🤖 Claude
Great question! For human-readable test specifications that generate E2E tests, here are the best approaches for your Playwright setup:
---
## 🤖 Claude
Perfect! The build succeeds. Now let's commit this debug version so you can test it on iOS and see what the logs tell us:
---
## 🤖 Claude
## 👤 User
Do a detailed code review. Follow guidelines from @AGENTS.md and assign a grade
---
## 🤖 Claude
I'll conduct a comprehensive code review following the AGENTS.md guidelines. Let me start by organizing this task.
### Problem 1: **Instructions are buried in narrative text**
Your current CLAUDE.md has rules mixed with explanatory text:
```markdown
Global Rules
-------------
- All text needs to be internationalized. Always make sure all language files are in sync and updated with each change
```
This is easy to **read** but easy to **forget during execution**.
@pliablepixels
pliablepixels / main.py
Created July 17, 2021 13:53
ZMES Cloud Function (Trusted app)
import firebase_admin
from firebase_admin import messaging
from firebase_admin import exceptions
from flask import jsonify
import json
from firebase_admin import auth
from functools import wraps
import jwt
import re