my-software
Health Warn
- No license — Repository has no license file
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 7 GitHub stars
Code Fail
- rm -rf — Recursive force deletion command in docker/my-dev/1-root-stuff.bash
Permissions Pass
- Permissions — No dangerous permissions requested
This is a personal configuration and dotfiles repository containing system setup instructions, shell configurations, and small utility scripts rather than a standalone software tool or integration server.
Security Assessment
The repository executes local shell commands and system configurations typical of development environment setups. A failed audit check identified a recursive force deletion command (`rm -rf`) inside a Docker setup script (`docker/my-dev/1-root-stuff.bash`), which can be destructive if misused or executed unexpectedly. No dangerous permissions or hardcoded secrets were detected. Overall risk is rated as Medium due to the destructive deletion command and lack of code review inherent to personal projects.
Quality Assessment
The project is actively maintained, with its last push occurring very recently (0 days ago). However, it lacks an open-source license, meaning legal usage rights are not explicitly granted. Additionally, with only 7 stars on GitHub, there is very low community visibility and peer review. It is explicitly designed for a single developer's personal workflows rather than public consumption.
Verdict
Use with caution.
My personal software: dot files, utility programs, setup instructions, and more
my-software
My personal software: dot files, utility programs, setup instructions, and more.
Overview
The most impactful component of this repository might be my macOS Setup notes. It provides step-by-step
instructions I like to follow for setting up a new Mac. In this repository, I've also crammed in a wide range of other
personal tooling I've developed or am just experimenting with.
mac-os/
My personal instructions for configuring macOS the way I like it and installing the tools I use.
See the README in mac-os/.
bash/
My Bash config and notes about Bash auto-completion (I always forget how to set this up!).
See the README in bash/.
homebrew/
A description of my Homebrew strategy.
See the README in homebrew/.
java/
Java code that supports my personal workflows.
See the README in java/.
javascript/
JavaScript code that supports my personal workflows.
See the README in javascript/.
jetbrains/
My configuration for JetBrains IDEs (e.g. Intellij and Android Studio).
Essential tools for software developers and teams
See the README in jetbrains/.
karabiner/
My configuration for the amazing tool Karabiner-Elements https://github.com/tekezo/Karabiner-Elements.
Karabiner-Elements is a powerful utility for keyboard customization on macOS Sierra or later.
nushell
My Nushell configuration and scripts.
See the README in nushell/.
starship/
My config file for Starship.
The minimal, blazing-fast, and infinitely customizable prompt for any shell!
Wish List
General clean-ups, TODOs and things I wish to implement for this project:
- Consider restoring (at
b3154ddeand before) the shortcuts I had defined fornavi(but no need to usenavi). There was some good knowledge there, but I never wound
up usingnavi. - Consider restoring (at
b3154ddeand before) my usage of markdownlint. I still like it, but I just never got used to using it.
learn them better. I think I should pare down the larger one-liners. - Consider restoring (at
b3154ddeand before) my Postgres-related Bash functions. These were hard fought and useful. Maybe reimplement in
Nushell. Alternatively, I often use Postgres in Docker. But still. (Same is true of the Mongo functions but not sure
how much I'll ever use Mongo again.) - I really want quick, keyboard-based diff review like I have in Intellij. See https://github.com/microsoft/vscode/issues/24389
- I want enhanced (LLM) search over my browser history. Safari somehow clobbers entries in my history, or at least
they don't show up. It's almost like it consolidates multiple pages for the same host or something. For example, as I
explore a new topic I'll look at official docs which are often scattered across multiple subsets of pages because of marketing
reasons and/or the natural sprawl of a volunteer-driven project. Some of these pages are golden, but hard to discover.
If I've found them once, then I want to find them again. Maybe I should use bookmarks/read-later more. Whatever it is,
consider this story again. Apache Iceberg (and the branching into Hive stuff) is a good example of this. - (aspirational) Finetune an LLM on parsing/extracting my TODO/WishList items. They aren't fully machine readable
because of formatting differences and also I use different words sometimes (DONE, SKIP, HOLD, and I might make
something up) so they aren't perfectly classifiable by keyword. I think this is a pretty good candidate for a
low-parameter model which I can run on my computer. I would just start with few shot learning. The idea is, take the
best parts of a task/project manager (Linear) and the low-tech approach of "just ad hoc markdown" (like I've done) and
get more mileage out of it. - In the scratch area, explore MCP in JetBrains. Maybe consider running Intellij in a DevContainer. Idk.
- DONE (first cut is at
strategy/) Strategy. I need to capture some overarching software strategy notes. I need broad and specific stuff. I generally
don't get a lot of long term leverage out of "text only" work products (that's why I have so many 'playground' repos
that are code plus lots of "what" and "why" text). But, things have bubbled up. I need essetnially 'cursorrules' for
myself and other LLMs to follow. For example, "smaller files" (maybe?) is a practical thing right now because the LLM
tools have better success "replacing file contents" than "slice editing" a file (see aider state-of-the-art notes on
this). Plus it's slow waiting for the LLM to replace the whole contents of a file. I don't want to run out of tokens.
But... this is completely impractical. There's no way I'm going to generally confine myself to small files. Big files
are often the best way to do things. Single-file scripts... An essay/blog. Still I need to capture the impactful
strategy notes. - Consider moving finished wish list items to own file so that we can save LLM tokens. I only want to ingest those
when doing refinement/history on my open wish list items (rare). Or... maybe consider using GitHub issues... but that's such an escalation. Or, create a "README"-like MCP tool that parses the finished section out. An agent would call this tool instead of reading the readme directly. Similarly, I might need a tool for updating (toggling) the status of items. I've already explored this but switched gears because of lack of experience with MCP/agents. - Consider
my-project-conventionsagent/tools. If it's my project (heuristics, in my GitHub user) and follows some other patterns (e.g. "wish list" section), then find and fix conventional issues (e.g. double newline, naming of sections, single line intro, etc). - I need a way to install the launcher. With the Java launcher, I use a Gradle plugin. But with npm there isn't as strong a story for this (you can make an argument, but I know enough to not try it). I'll just use Nushell.
- Consider bringing back any of these archived projects that were removed from this repository in the commit after 31f63e651c3c30921294dfcaccbc668329ed8a4b:
go/pkg/go-body-omittergo/pkg/posix-nushell-compatibility-checkerjava/java-body-omitterkarabiner/assets/complex_modifications/move-between-tabs.jsonkarabiner/assets/complex_modifications/open-apps.jsonmcp/This was neat but just learning from first principles. I've captured the knowledge and tricks elsewhere.python/text-condenserGestated into a decent vision. Recover the plan/language.rust/nushell-ast-printer
- Split up Go programs into own sub-projects. I've really only found Gradle to be an effective monorepo tool. It splits things in separate compilation units and dependency trees. Nothing else is as powerful and that's perfectly fine. I'll keep my Java/Kotlin co-mingled by a single Gradle project, but READMEs have to go in their own sub-projects.
- PARTIAL Sandbox profile should allow
mkdirandpwddon't know why these are blocked.(allow default)allows sub-processes so what's going on?- DONE Allow file write to my conventional '~/.shell-debug.log'
- Rewrite Git aliases as just shell aliases (Nushell). I don't see super see the point of git aliases plus I already re-wrap them in shorter shell aliases anyway ('gl' for 'git lg' for 'git log ...')
- Actually incorporate the Claude Skills. The one I added is LLM inferred (though pretty good) and based on a wide upgrade of my junit-playground.
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found