Posts
Ascii Art Splash Screen for Your Terminal
I like having a splash screen with ASCII art. A lot of people like using neofetch, but I like putting my own art there. Either way, it is very simple to configure.
Bash and Zsh both load RC files from your home directory when they launch, .bashrc and .zshrc respectively. These are just scripts that get loaded full of setup commands to run before running your commands in the interactive terminal.
Posts
Script to Generate a Python Requests Script from a Burpsuite Saved Request
Motivation for the Project In web penetration testing, it is commonplace to write quick and dirty python scripts to perform a web requests. Burpsuite has a feature to copy a request as a valid curl command that you can run to recreate an identical HTTP request. This command is a valid bash command that could then be used to create a bash script to perform the same request. What if there was also a way to automatically generate a boilerplate python requests script that sets all appropriate headers, cookies, and post content?
Posts
Script to Optimize Alphanumeric Base64 for Reverse Shell Payloads
Description of the Problem When trying a reverse shell payload, you want to remove as many variables as possible. Often it must be injected in the middle of a series of broken quotes or special characters. It would be beneficial to remove as many special characters as possible.
Base64 consists of an alphabet of uppercase, lowercase, numbers, and special symbols like plus signs. These speical characters have meaning in web payloads, where form encoding or json special characters may mean you have to alter your payload to work properly in the context where you paste it.
Posts
Using ChatGPT to Automatically Tag Documents in a Zettelkasten Document Graph
Project to Automatically Select Tags for Zettelkasten Documents Motivation for the Project When working within a zettelkasten, it’s not uncommon to neglect the task of tagging documents. This can be attributed to the speed of creating a new card, leaving little time to tag it properly. Additionally, it’s easy to overlook certain tags that may be relevant at that moment. There’s also the consideration of whether it would be beneficial to create new tags.
Posts
Adding Merge Note Feature to Workflow
Merging Notes with Obsidian and ZKVR: An Engaging Workflow In my notetaking workflow, I frequently use the merge note feature in Obsidian. This feature is a powerful tool that allows me to clean up old notes and update all the backlinks of a note to point to a new one.
Recently, I found myself wishing for a similar feature within zkvr, my terminal user interface graph IDE. I set out to implement this feature and found the resulting workflow to be highly engaging.
Posts
Mass Running Vulnerability Scan Tools on Github Repositories
vuln scanning github repos I decided to run code vulnerability scanning tools en-masse on all of the PHP github repositories that have a certain amount of stars/followers. It helped that I already started with a list of github repositories. That is a major limiting factor for this project. It would be difficult to scrape a list of PHP repositories from github.
I sorted the repositories by number of stars so the most interesting ones get scanned, and I scanned the top 30k.
Posts
How to Implement Modular Subcommands in Bash
how to implement a modular subcommand with lightweight scripts Creating powerful Command Line Interface (CLI) tools quickly can be achieved through a method that focuses on organizing your code. This approach involves a modular design that is not only easy to test but also allows for the separation of concerns. Subcommands, which can be written in whatever language appropriate for their specific job, play a significant role in this process.
Posts
Platform Specific Version Selector Install Scripts
creating platform specific install scripts for my environment My environment and dotfiles are installed automatically when the install scripts are run. These scripts will run other dependent scripts designed as version selectors for programs where there is no common apt or brew installation package candidate.
There are two such programs:
bat version selector script lazygit version selector and interactive install script bat is a command to preview and pretty print code or markdown with syntax highlighting.
Posts
Testing Recurrent Openai Chatgpt Prompts
creating your own assistant with your own data The quickest option to get started playing with creating you own assistants with a GUI tool is to use flowise
https://flowiseai.com/ https://github.com/FlowiseAI/Flowise coding example from youtube creating an assistant with your own data using python: https://youtu.be/9AXP7tCI9PI?si=dOd8TuYSDxM5Ke79 link to example python project from video https://github.com/techleadhd/chatgpt-retrieval crafting prompts you can make pretty complicated assistants just by crafting GPT prompts. the example assistant scripts make use of python langchain library to load your own data to create an assistant and encode it somehow into the prompt.
Posts
Zettelkasten Github TUI - ZKVR Project
zkvr project I developed the zkvr project in 2022 after learning about zettelkasten. I developed it using bash and awk scripts and other open source TUI (Text User Interface) tools available. I watched rwxrob’s youtube for inspiration for the structure of the project. I took the ideas and ran with them, creating an fzf menu-driven workflow script for maintaining a graph database of markdown files. I even created a simple but powerful graph query language for it that can be used to find a path of document nodes connected to other nodes, filtering by tags.