Skip to content

Instantly share code, notes, and snippets.

LLM Wiki

A pattern for building personal knowledge bases using LLMs.

This is an idea file, it is designed to be copy pasted to your own LLM Agent (e.g. OpenAI Codex, Claude Code, OpenCode / Pi, or etc.). Its goal is to communicate the high level idea, but your agent will build out the specifics in collaboration with you.

The core idea

Most people's experience with LLMs and documents looks like RAG: you upload a collection of files, the LLM retrieves relevant chunks at query time, and generates an answer. This works, but the LLM is rediscovering knowledge from scratch on every question. There's no accumulation. Ask a subtle question that requires synthesizing five documents, and the LLM has to find and piece together the relevant fragments every time. Nothing is built up. NotebookLM, ChatGPT file uploads, and most RAG systems work this way.

@Neonsy
Neonsy / JJ VSC Setup Guide.md
Last active April 17, 2026 09:15
JJ VSC Setup Guide (Powershell & ZSH)

Jujutsu (jj) Developer's Manual

Cross-Platform Guide, includes both Windows (PowerShell) and Ubuntu/Linux (Bash/Zsh) setup instructions.


1. The Mental Model: git vs jj

Concept Git jj
@jfeilbach
jfeilbach / ubuntu_24_gaming.md
Last active May 7, 2026 02:42
Ubuntu 24.04 LTS Noble Numbat Gaming Setup

Ubuntu 24.04 LTS Gaming Setup

Update April 2026. Ubuntu LTS 26.04 is out and you should start with that. It is much newer and more polished. It offers a superior gaming experience than 24.04 will provide.


Gaming on Linux is very easy these days. You can install your OS, install Steam, install a game and hit "Play" and it should work. I use Ubuntu because I have been using it for so long and know both the distro and Gnome desktop well. I made this mostly for myself. This is not a comprehensive guide to setting up gaming on Linux. Maybe someone will find some part of this useful and help them. This small guide will not discuss the OS install and setup. You should be able to do that on your own. If you are new to Linux there are plenty of guides to help you get started. If you are running on a VM you are on your own. If you are on Ubuntu 25 or 26 things may be very different or not work at all. As with any Linux distro you can always check the version by running the shell command cat /etc/os-release

@sebbbi
sebbbi / WebGPU_triangle.mm
Created October 21, 2024 10:14
MacOS Dawn WebGPU triangle (messy mashed together code). Works with October 2024 WebGPU API.
#import <Cocoa/Cocoa.h>
#import <QuartzCore/CAMetalLayer.h>
#import <Metal/Metal.h>
#include <cstdlib>
#include <iostream>
#include <webgpu/webgpu.h>
// Custom delegate class to handle window close events
@interface WindowDelegate : NSObject <NSWindowDelegate>
@DanRibbens
DanRibbens / Episodes.ts
Last active September 1, 2024 18:52
Payload Many to Many Relationships example
import type { CollectionConfig } from 'payload/types'
export const Episodes: CollectionConfig {
slug: 'episodes',
admin: {
useAsTitle: 'title',
},
access: {
read: () => true,
},
@steveruizok
steveruizok / cache.ts
Last active March 3, 2026 16:27
weak map gist
export class Cache<T extends object, K> {
items = new WeakMap<T, K>()
get<P extends T>(item: P, cb: (item: P) => K) {
if (!this.items.has(item)) {
this.items.set(item, cb(item))
}
return this.items.get(item)!
}
@tuansoibk
tuansoibk / cryptography-file-formats.md
Last active April 4, 2026 14:08
Cryptography material conversion and verification commands
  1. Introduction
  2. Standards
  3. Common combinations
  4. Conversion
  5. Verification/Inspection
  6. Tips for recognising

Introduction

It happens that there are many standards for storing cryptography materials (key, certificate, ...) and it isn't always obvious to know which standard is used by just looking at file name extension or file content. There are bunch of questions on stackoverflow asking about how to convert from PEM to PKCS#8 or PKCS#12, while many tried to answer the questions, those answers may not help because the correct answer depends on the content inside the PEM file. That is, a PEM file can contain many different things, such as an X509 certificate, a PKCS#1 or PKCS#8 private key. The worst-case scenario is that someone just store a non-PEM content in "something.pem" file.

Twitter abuses all media file uploads, each type in its own way. If we want to upload a good looking animation loop from some low-color, high-detail generative art, we have to game their system's mechanisms.

  • don't upload a video file, they will re-encode it into absolute 💩

  • create a GIF, which they will auto-convert into a video file 😱

  • The frames of the GIF will be resized to an even-sized width using an extremely naive algorithm. Your GIF should be an even size (1000, 2000,

@sindresorhus
sindresorhus / esm-package.md
Last active May 5, 2026 02:50
Pure ESM package

Pure ESM package

The package that linked you here is now pure ESM. It cannot be require()'d from CommonJS.

This means you have the following choices:

  1. Use ESM yourself. (preferred)
    Use import foo from 'foo' instead of const foo = require('foo') to import the package. You also need to put "type": "module" in your package.json and more. Follow the below guide.
  2. If the package is used in an async context, you could use await import(…) from CommonJS instead of require(…).
  3. Stay on the existing version of the package until you can move to ESM.
@ctsrc
ctsrc / README.md
Last active April 19, 2026 01:41 — forked from niw/README.en.md
Guide: Run FreeBSD 13.1-RELEASE for ARM64 in QEMU on Apple Silicon Mac (MacBook Pro M1, etc) with HVF acceleration (Hypervisor.framework)