colem e94d6b3c14 feat(opencode): add ibmi column-info tool and harden permissions
- add the get_column_info custom tool for the ibmi-mcp-server and
  relocate its --tools path from a hardcoded absolute path into the
  version-controlled tree via {env:HOME} interpolation
- reorder permission rules so "rm -rf *" (deny) is no longer shadowed
  by "rm *" (ask); last-match-wins now resolves rm -rf to deny
- add allow rules for the Python toolchain (unittest, py_compile,
  venv activation, ruff check/format)
- rename plugin/ to plugins/ to match the documented plural convention
- commit package.json and package-lock.json so the ibmi-gate plugin
  resolves @opencode-ai/plugin on a fresh stow
- correct the README opencode directory description
2026-07-31 09:14:29 -05:00
2024-05-23 21:16:09 -05:00

Cole's Dotfiles

Personal dotfiles for zsh, Neovim, and opencode, plus a few shell scripts. The setup is managed with GNU stow, a symlink manager that links the files in this repo to their corresponding locations under the home directory.

The zsh theme and plugins are installed manually rather than through a plugin manager. The ~/.zsh directory is used to hold the git repos of any shell dependencies.

Repository layout

.
├── .zshrc                  # zsh config: PATH, history, completions, prompt, aliases
├── .config/
│   ├── nvim/               # Neovim config (init.lua, lua/, after/, queries/)
│   └── opencode/           # opencode config (commands, plugins, MCP tools, rules)
└── .scripts/               # Standalone shell scripts (on $PATH)
    └── hello.sh

Everything above is relative to the home directory, which is exactly what stow . expects.

Prerequisites

Required

  • GNU stow — install with the system package manager (brew install stow, apt install stow, etc.).
  • A Nerd Fontinstall one and configure it in the terminal, editor, and IDE of choice. Required for icons in the prompt and lsd.

Shell theme and plugins

Clone into ~/.zsh/ so .zshrc picks them up automatically:

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ~/.zsh/powerlevel10k
git clone --depth=1 https://github.com/zsh-users/zsh-autosuggestions ~/.zsh/zsh-autosuggestions

Optional

  • lsd — drives the ls/ll/lt aliases in .zshrc. Without it, the aliases fall back to the system ls. (github.com/lsd-rs/lsd)

Configure a new machine

  1. Clone into the home directory:
    git clone https://github.com/cole-maxwell1/dotfiles.git ~/dotfiles
    
  2. Symlink the dotfiles into place with stow:
    cd ~/dotfiles && stow .
    
  3. Make the scripts executable:
    chmod -R u+x ~/dotfiles/.scripts/
    
  4. If this is the first run with Powerlevel10k, generate the prompt config:
    p10k configure
    
  5. Restart the shell (or exec zsh) to load the new config.

To remove the symlinks without deleting the repo:

cd ~/dotfiles && stow -D .

Running stow . again re-creates them.

Secrets

If ~/.secrets exists, .zshrc sources it near the top of the file so environment variables (API keys, tokens, etc.) are exported into the shell. This file is intentionally not part of the repo — create it locally and keep it out of version control.

S
Description
No description provided
Readme 128 KiB
Languages
Lua 86.8%
TypeScript 11.5%
Tree-sitter Query 1.4%
Shell 0.3%