SSH tunneling and port forwarding snippets and utils
| # This file lists the color values of the default dark theme. | |
| # Each line starting with a # is a comment. | |
| # To overwrite certain colors remove the leading # and change the color values. | |
| # The "extends" line defines which color definitions to use if none is found here. | |
| extends=deepgit-dark-theme.properties | |
| # The "preferredEditorTheme" line determines what editor theme should be used by default ('light' or 'dark'). | |
| preferredEditorTheme=dark |
| <?php | |
| function sendWithPhpMailer($subject, $body, $reply) { | |
| require(ABSPATH . WPINC . '/class-phpmailer.php'); | |
| require(ABSPATH . WPINC . '/class-smtp.php'); | |
| // date_default_timezone_set( 'America/Sao_Paulo' ); | |
| $blogname = wp_strip_all_tags( trim( get_option( 'blogname' ) ) ); | |
| $smtpHost = wp_strip_all_tags( trim( get_option( 'smtp_host' ) ) ); |
Connect local port to server port
An SSH tunnel creates a connection between a port on your local machine and a address + port on the server, and tunnels the data to the server over SSH on port 22 to the server address + port.
This is done so that it doesn't get blocked by any firewalls or security groups (assuming only SSH connections are allowed to the server). After the data reaches the SSH server it gets forwarded to the address + port you specified when you created the SSH tunnel.
An important detail here is that the destination address + port are accessed from the context of the server, so localhost or 127.0.0.1 refer to the server machine on the destination side of the tunnel, not your local machine.
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.
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.