AI Coding Setup
workspace setup
Coding with AI is my default work setup. I have been using Claude Code with a TUI workspace setup to streamline my coding experience. I mostly use tmux, ghostty, claude code, lazygit, and yazi in my daily development.
tmux
My tmux has enabled tpm as a plugin manager, installs plugins to restore sessions after server reboot, and also enables mouse support to switch panes and windows via mouse click. All settings are stored in ~/.tmux.conf.
-
change tmux prefix key
Terminal window set -g prefix C-a # set Ctrl-a as the prefix keyunbind C-b # unbind Ctrl-bbind C-a send-prefix # allow sending the prefix key -
set the index, all indexes in tmux start with
0, want to use1insteadTerminal window set -g base-index 1 # start windows numbering at 1set -gw pane-base-index 1set -g renumber-windows on -
enable mouse
Terminal window set -g mouse on -
install tpm and other plugins
Basically,
'tmux-plugins/tpm'andtmux-plugins/tmux-sensibleare required to manage plugins. Other plugins should be below them. At last,run '~/.tmux/plugins/tpm/tpm'is mandatory.- clone tpm
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm - update
~/.tmux.confTerminal window # List of pluginsset -g @plugin 'tmux-plugins/tpm'set -g @plugin 'tmux-plugins/tmux-sensible'# other plugins hererun '~/.tmux/plugins/tpm/tpm'
- clone tpm
-
plugins
Add new plugins to
~/.tmux.confwithset -g @plugin '...'Press prefix + I (capital i, as in Install) to fetch the plugin.
The following plugins will save the tmux session and also restore it when tmux is restarted.
Terminal window set -g @plugin 'tmux-plugins/tmux-resurrect'set -g @plugin 'tmux-plugins/tmux-continuum'set -g @continuum-restore 'on'set -g @continuum-save-interval '10'
ghostty
By default, Ghostty doesn’t need any config. I just update font and notification setup in ~/.config/ghostty/config.
font-family = "JetBrains Mono"font-size=20copy-on-select=clipboardapp-notifications=no-clipboard-copyyazi
Yazi is a terminal file manager. We can explore and select/view files/directories in TUI mode, super useful in coding. I changed the layout so only 2 parts of the window are displayed instead of the default 3.
[mgr]ratio=[0, 1, 4]lazygit
No configuration at all, use all default parameters.
Toolset
Currently I did a couple of coding projects with claude code and other tools, from UI design to implementations. I am pretty used to this setup. As LLMs progress, I feel busier coding. I also tried many tools, but the tools I use most have not changed much.
-
UI/Design
- pencil: it supports both MCP and ACP, so I can design the UI in
claude codevia MCP tools or directly inpencilvia ACP through Claude or OpenAI agents. Its design is saved in a.penfile, which is actually a JSON file. - open-pencil: a similar tool but open source. Now it provides MCP and skills to create design in Claude Code, and also supports configuring various LLMs in its UI (but I didn’t succeed in its UI, only achieved it in Claude Code). It creates design in a
.figfile and can be imported intofigmaorpenpot. - google stich: I used it to create
MTooland several websites. It now supports MCP and skills but has a little bit complicated setup, requiring configuration of a Google Cloud project and API keys.
- pencil: it supports both MCP and ACP, so I can design the UI in
-
coding
- most of the time use
claude codewithsuper-devskill - tried
opencode, but not very satisfied - used google antigravity when converting MTool design to website
- cursor, but still use the
super-devskill
- most of the time use